jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript – 在jquery中突出显示当前页面大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有12个html页面.单击左侧导航栏链接时会加载所有这页面.在这里,我需要在当前链接添加一个类,单击并加载页面.我试过这个:

$(function(){
    $('#container li a').click(function(){
        $('#container li a').removeClass('current');
        var pathname = (window.LOCATIOn.pathname.match(/[^\/]+$/)[0]);
        var currentPage = $(this).attr('href');

        if(currentPage==pathName){
            $(this).addClass('current');
        }
        else{
            alert('wrong');
        }

       // alert(pathname+' currentPage: '+currentPagE);

    })
})

它工作,但在页面加载,类被删除,我不知道为什么它发生..

任何帮助?

解决方法

吉米是对的.当您重新加载页面时,浏览器还会刷新Javascript代码,这意味着您所做的所有变量和设置也将被重置.这就是您单击链接时类似乎被删除的原因.

这里的解决方案是修改您的代码以遍历所有链接,并将每个链接当前页面的URL进行比较.找到匹配项后,请调用链接的addClass函数以更改其颜色.所以,这样的事情应该有效

$(function(){

    var pathname = (window.LOCATIOn.pathname.match(/[^\/]+$/)[0]);

    $('#container ul li a').each(function() {
    if ($(this).attr('href') == pathName)
    {
        $(this).addClass('current');
    }
    });
});

请注意,我们在页面加载时调用此循环函数,而不是在用户单击链接调用它…因为单击链接将导致页面重新加载,这将重置所有JQuery变量.

希望这可以帮助.

大佬总结

以上是大佬教程为你收集整理的javascript – 在jquery中突出显示当前页面全部内容,希望文章能够帮你解决javascript – 在jquery中突出显示当前页面所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。