Php 将活动类添加到<;李>;标签

Php 将活动类添加到<;李>;标签,php,javascript,Php,Javascript,每当访问特定url时,我想向添加活动类 我的代码是这样的 <ul> <li> <a href="link1">Link1</a> </li> <li> <a href="link2">Link2</a> </li> <li> <a href="link3">Link3</a> </li> <li>

每当访问特定url时,我想向
  • 添加活动类

    我的代码是这样的

    <ul>
    <li>
        <a href="link1">Link1</a>
    </li>
    <li>
        <a href="link2">Link2</a>
    </li>
    <li>
        <a href="link3">Link3</a>
    </li>
    <li>
        <a href="link4">Link4</a>
    </li>
    <li>
        <a href="link5">Link5</a>
    </li>
    <li>
        <a href="link6">Link6</a>
    </li>
    </ul>
    
    如果url中存在www.abc/link1,则只有第一个li应处于活动状态,其余li不应具有任何类


    Thnks-advanced

    使用jQuery,您可以使用:

    $("li").addClass("active");
    
    但是你必须发展逻辑部分

    编辑:…如下所示:

    $(function() {
        $("li").removeClass("active");
        var current = window.location.pathname.split('/').pop();
        $('a[href="' + current + '"]').addClass("active");
    });
    

    使用jQuery,您可以使用:

    $("li").addClass("active");
    
    但是你必须发展逻辑部分

    编辑:…如下所示:

    $(function() {
        $("li").removeClass("active");
        var current = window.location.pathname.split('/').pop();
        $('a[href="' + current + '"]').addClass("active");
    });
    

    下面是如何使用JavaScript实现它

    var normalisePath = function(path) { return path.replace(/^\/|\/$/g, ''); },
    var path = normalisePath(window.location.pathname),
        li = document.getElementsByTagName('li'),
        i, length, a;
    
    for (i = 0, length = li.length; i < length; i++) {
        a = li[i].getElementsByTagName('a')[0];
    
        if (normalisePath(a.pathname) == path) {
            li[i].className += ' active';
            break;
        }
    }
    
    var normalisePath=function(path){return path.replace(/^\/\\/$/g,,);},
    var path=normalisePath(window.location.pathname),
    li=document.getElementsByTagName('li'),
    i、 长度,a;
    对于(i=0,length=li.length;i
    以下是如何使用JavaScript实现这一点

    var normalisePath = function(path) { return path.replace(/^\/|\/$/g, ''); },
    var path = normalisePath(window.location.pathname),
        li = document.getElementsByTagName('li'),
        i, length, a;
    
    for (i = 0, length = li.length; i < length; i++) {
        a = li[i].getElementsByTagName('a')[0];
    
        if (normalisePath(a.pathname) == path) {
            li[i].className += ' active';
            break;
        }
    }
    
    var normalisePath=function(path){return path.replace(/^\/\\/$/g,,);},
    var path=normalisePath(window.location.pathname),
    li=document.getElementsByTagName('li'),
    i、 长度,a;
    对于(i=0,length=li.length;i
    检查

    var path = window.location.pathname
    
    并将其与您的
    li
    s进行比较。将
    active
    类添加到其
    a
    s href匹配
    path
    li
    类中


    并将其与您的
    li
    s进行比较。将
    active
    类添加到一个
    li
    类,该类的
    a
    s href匹配
    path

    只需向每个页面附带的url添加一个变量即可

    www.abc/link1?link_num=1
    
    然后

    然后


    我相信有一种更好的方法,但这样做可以

    只需在每个页面的url中添加一个变量即可

    www.abc/link1?link_num=1
    
    然后

    然后


    我相信有一个更好的方法,但这样做可以

    我想你可以试试
    cURL
    。但是你需要自己做一些挖掘。我想你可以试试
    cURL
    。但是你需要自己做一点挖掘。这个答案很有用。为什么不写下“是的,这是可能的”?顺便说一句-1不是我说的…哇,这个答案很有用。为什么不写下“是的,这是可能的”?顺便说一句,-1不是我的…+1表示服务器端解决方案优于客户端解决方案。+1表示服务器端解决方案优于客户端解决方案。