2

我目前使用的脚本实际上运行良好,只要我保持我的文件结构如下:

http://website.com/
http://website.com/page1.php
http://website.com/page2.php
http://website.com/page3.php

但是当我暗示我的 mod_rewrite 代码带走“.php”

http://website.com/
http://website.com/page1
http://website.com/page2
http://website.com/page3

我的导航突出显示脚本停止工作。

这是我实现代码的方式

的HTML

<body id="page1">

JS

$(function() {

    //highlight the current nav
    //each of the following lines represents a different page
    $("#page1 a:contains('Page 1')").parent().addClass('active');
    $("#page2 a:contains('Page 2')").parent().addClass('active');



});

JS 中的 ID 在每个 body 标记中查找 ID,并且显示 ('Page 1') 的部分在菜单中查找项目以识别要突出显示的菜单项。正如我所说,它工作正常,直到带走 .php。我假设它与 js 中的 .parent 有关,但我不确定用什么替换它,或者如何使它正常工作。有什么建议么?

4

1 回答 1

1

如果<body>您的每个页面中的标签都包含一个唯一 ID,您只需检查该 ID 是否存在。

像这样(更新)

for(var i = 0; i < $(".menu-item").length; i++){
    var item = i+1;
    if($("#page"+item).length>0){
        $("li:nth-child("+item+")").addClass("active");
        break;
    }
}

更新您更新的小提琴

小提琴

于 2015-01-29T07:29:17.897 回答