Javascript 如何编写js或css,以便在单击其他类时删除类和编写类 /*活动类*/

Javascript 如何编写js或css,以便在单击其他类时删除类和编写类 /*活动类*/,javascript,html,css,Javascript,Html,Css,如何为…编写css或js 如果单击项目(标记a),那么代码应该是这样工作的 <nav class="mynav"> <ul id="mynavigation"> <li><a class="active" href="#hm">Main</a></li> /* Active Class */ <li><a href="#pj">Projects</a>

如何为…编写css或js

如果单击项目(标记a),那么代码应该是这样工作的

<nav class="mynav">
    <ul id="mynavigation">
        <li><a class="active" href="#hm">Main</a></li> /* Active Class */
        <li><a href="#pj">Projects</a></li>
        <li><a href="#port">Port</a></li>
        <li><a href="#contact">Contact</a></li>
    </ul>
</nav>

  • /*活动类*/
步骤
1.在id='mynavigation'中删除class='active'

2.使用jQuery的removeClass和addClass方法在id='mynavigation'中单击标记a中的class='active'

<nav class="mynav">
    <ul id="mynavigation">
        <li><a class="" href="#hm">Main</a></li>
        <li><a class="active" href="#pj">Projects</a></li>  /* Active Class */
        <li><a href="#port">Port</a></li>
        <li><a href="#contact">Contact</a></li>
    </ul>
</nav>

给出列表项的ID,然后执行以下操作

$('#mynavigation li a').click(function(){
  $('#mynavigation li a').removeClass('active');
  $(this).addClass('active')
});
并激活它

document.getElementById("myId").class = "";

如果您的页面没有重新加载或重定向到其他页面,则此代码将起作用

document.getElementById("myId").class = "active";
如果您的代码要转到其他页面,则此脚本将无法工作。 要执行所需操作,必须将click链接存储到缓存中,然后将活动类放在存储在缓存中的链接上

 $('body').on('click' , '#mynavigation li a', function(){
    $('#mynavigation li a').removeClass('active');
      $(this).addClass('active')
  });
var-prevLink='';
如果(选中Cookie('clickedLink')!=“”){
prevLink=getCookie('clickedLink');
$('.navi li a')。每个(函数(){
if($(this.attr('href')==prevLink){
console.log($(this.attr('href'));
$(this.parent().addClass('active');
}否则{
$(this.parent().removeClass('active');
}
})
};
函数setCookie(cname、cvalue、exdays){
var d=新日期();
d、 设置时间(d.getTime()+(exdays*24*60*60*1000));
var expires=“expires=“+d.toutString();
document.cookie=cname+“=”+cvalue+”;“+expires+”;path=/”;
};
函数getCookie(cname){
变量名称=cname+“=”;
var ca=document.cookie.split(“;”);
对于(变量i=0;i
$('#mynavigation')。查找('a')。每个(函数(){ $(this).on('click',function(){If(!($(this).hasClass('active')){ $(this).parent().sides().children('a').removeClass('active'); $(this.addClass('active');}}});})


使用jQuery可以轻松地完成此操作。此主题重复。你可以在这里找到答案:向我们展示你尝试过但没有成功的东西?可能是重复的
     var prevLink = '';

    if (checkCookie('clickedLink') != '') {
        prevLink = getCookie('clickedLink');
        $('.navi li a').each(function() {
            if ($(this).attr('href') == prevLink) {
                console.log($(this).attr('href'));
                $(this).parent().addClass('active');
            } else {
                $(this).parent().removeClass('active');
            }
        })
    };

    function setCookie(cname, cvalue, exdays) {
        var d = new Date();
        d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
        var expires = "expires=" + d.toUTCString();
        document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
    };

    function getCookie(cname) {
        var name = cname + "=";
        var ca = document.cookie.split(';');
        for (var i = 0; i < ca.length; i++) {
            var c = ca[i];
            while (c.charAt(0) == ' ') {
                c = c.substring(1);
            }
            if (c.indexOf(name) == 0) {
                return c.substring(name.length, c.length);
            }
        }
        return "";
    };

    function checkCookie(cookieName) {
        var user = getCookie(cookieName);
        if (user != "") {
            return true;
        } else {
            return false;
        }
    };