javascript - 将事件类添加到当前事件链接

标签 javascript jquery html css

我知道这个问题在 SO 上可用,但我必须问这个。
我为我的导航制作了一个插件,其中包含多个功能和事件。
一种方法是在当前链接中添加一个事件类。
该方法之前工作正常,但我做了一些更改,现在它不再工作了。

我的方法是:

$('.nav-menu li a').filter(function(){
    return this.href == location.href.replace(/#.*/, "");
}).addClass("active");

这个方法很简单,但是我需要重新写一遍。
该插件上有几个函数和一个事件处理程序。

有一些选择器处理点击事件

 $(document).on('click', '.nav-menu li a', function(e) {
    if ($(this).attr('href') !== '#') {
        var link = $(this).attr('href');
          $('#preloader').removeClass('fadeOut').addClass('fadeIn').fadeIn('slow');
            setTimeout(function() {
              window.location = link;
            }, 1500)
    } else if ($(this).attr('href') == '#') {
        e.preventDefault();
     }
 });

最佳答案

可能是 this.href 没有给你绝对 url。不过我不确定。但如果您使用 indexOf 会更好,即使 href 中有相对 url 也能正常工作。

$('.nav-menu li a').filter(function(){
    return location.href.replace(/#.*/, "").indexOf($(this).attr('href')) != -1;
}).addClass("active");

关于javascript - 将事件类添加到当前事件链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30485349/

相关文章:

javascript - 修改倒计时脚本以在每周的特定日期和时间重复

jquery - 使用 "enter"键发送带有自定义复选框/ radio 图像的表单

javascript - 将wirejs 与 jQuery 插件结合使用

html - 当我尝试渲染pdf文件时css在渲染插件中不起作用

php - 在数据库中保存 HTML 页面

javascript - 带上一个/下一个按钮的图像轮播/幻灯片

javascript - 如何获取 JavaScript 对象的大小?

javascript - 表单输入中的百分比符号

javascript - 使用 jQuery 重新排序和动画列表项?

html - 当左侧元素具有 float 属性时如何设置 padding Bootstrap?