1

我有一棵具有以下结构的树:

Home
Products
    Product1
    Product2
Item1
Item2
Item3

我要求选择产品1时,产品的颜色应为红色。为此,我使用了以下 jquery:

<script type="text/javascript">
$(document).ready(function () {
     $(".leftnav li ul li").click(function(){
       var thisAnchor = $(this);
       var parent = $(thisAnchor).parent().parent();
       $(parent).children("a").css('color','red');
    }); 
});
</script>

这里 leftnav 是包含树结构的 div 上使用的类。一旦我点击Product1颜色就会改变,但一旦页面回发就会消失。有人可以指导我如何解决这个问题。

问候,斯瓦蒂耆那教

4

3 回答 3

1

如果我理解正确,您需要在回发中保持状态。要么你可以

  1. 将当前选择状态回发到服务器并在生成的 html 上为回发设置颜色
  2. 将当前选择状态存储在 cookie 中(查看 jquery cookie 插件)并修改颜色document.ready
于 2012-05-31T06:38:41.203 回答
0

您需要使用 php 动态设置类或设置页面 id/类,以便页面知道它在哪里。例如,如果您在产品页面上,正文标签将有一个 id 或产品。然后在你的CSS中,你可以将产品导航元素设置为红色

body#products .leftnav li ul li.on{
 color: red;
}

您的 html 将位于产品页面上,如下所示:

<body id="products">
...
<ul>
  <li>
    <ul>
      <li class="on">
         Products
      </li>
    </ul>
  </li>
</ul>
于 2012-05-31T06:40:42.203 回答
0

好吧,您可能可以准备好文档上的页面 url 并做一些 if 条件,或者您可以在加载更改颜色的页面上添加一个静态 jscript,再次在页面准备好时。顺便说一句,要获取 url,只需编写 var url = window.location.href

于 2012-05-31T06:41:39.053 回答