javascript - 需要消除一个 .click() 事件

标签 javascript jquery

我的代码用于膝盖的工作模型。为了动态加载膝盖的每个 View ,并去除我的 URL 中的散列,我使用了 pushState 方法,其中包括一个 .click() 事件。所以基本上我有两个类别,当您单击类别中的一个选项时,应用程序会加载膝盖那部分的描述。但出于某种原因,我可以单击动态加载的类别,但是当我单击类别中的一个选项时,页面会刷新。刷新后,类别中的每个选项都会动态加载。我想知道我的 .click() 事件是否发生冲突,或者可能由于某种原因导致刷新。如果是,我需要能够在不中断 pushState 方法的情况下将两者合二为一。有什么想法吗?这是我认为可能会发生冲突的代码:

$(function() {
    $('.knee-navigation a').click(function() {
        $('.knee-navigation a').removeClass();
        $(this).addClass('current_cat');


        if ($('.maladies-label a').hasClass('current_cat')) {
            $(".term-list").load("maladies-menu.php ul");
        } else {
            $(".term-list").load("anatomy-menu.php ul");
        }
    });
});




$(function() {
    var main = $("main");

    $("a, area").click(function() {
        var href = $(this).attr("href");

        history.pushState('', '', href);

        // load the content
        loadContent(href);

        return false;
    });

});

帮助!

最佳答案

某些元素(例如:button'、'a' 等)的默认操作会导致页面转到其他地方。您可以通过在event` 对象上设置您的处理程序preventDefault来防止这种情况,如下所示:

$('a, area').on('click', function (e) {
    // do stuffs

    e.preventDefault();
});

关于javascript - 需要消除一个 .click() 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30579343/

相关文章:

javascript - 我怎样才能使它成为一个更好的递归动画 jQuery 脚本?

javascript - 在 ActionResult 中更改 HighCharts 中的标题样式

javascript - 使用 jQueryeach() 动态添加图像到 div ..不知何故,它们都添加到最后一个 div

javascript - 使用 javascript/jQuery 验证输入类型数字

javascript - IE jQuery 对象错误 SCRIPT5007

jquery - 在 Slick Slider 中显示下一张幻灯片的一半,无需居中模式

jquery - 使用选择选项填充输入=文本

javascript - Bootstrap Popover 在加载 Ajax 时不工作

javascript - Node.js v8 HOLEY 数组意外行为

javascript - 如果在 javascript 中以不同方式访问属性,性能会有所不同吗?