gpt4 book ai didi

javascript - jQuery 单击 anchor 标记重新加载页面

转载 作者:行者123 更新时间:2023-11-29 19:23:31 27 4
gpt4 key购买 nike

正如许多其他线程和外部论坛所建议的那样,我已经尝试将 e.preventDefault() (同时将 e 作为参数传递,而不是在代码示例中)放置在每个可以想象的地方,但它不会阻止 anchor 重新加载页。当我单步执行调试器时,它会为每个带有 scrollNav 的 div 分配点击事件,但是当我单击 div 链接时,它只会重新加载页面,并且调试器不会在 highlightSelection 函数的任何行上停止。我尝试过的另一种方法是在 this.click 中使用匿名函数并将 e.preventDefault() 放在第一行,但它什么都不做。

我也不太明白为什么你会像许多其他人所建议的那样放置 e.preventDefault() 。基本上不是说 return false 吗?这可能会阻止链接重新加载页面,但不会阻止方法中的代码执行吗?

jQuery(document).ready(function() {

jQuery('.scrollNav').each(initSideNavForSelection);

}); // end ready

function initSideNavForSelection() {
this.click(highlightSelection);
}

function highlightSelection() {
var selectedDataID = this.attr("data-id");

jQuery('.scrollNav').each(function() {
if (this.attr("data-id") === selectedDataID) {
this.addClass("selected");
} else {
this.removeClass("selected");
}
})

最佳答案

onclick="return false;" 添加到 anchor 。或者将 initSideNavForSelection 函数更改为

this.click(function(e) {
e.preventDefaults();
highlightSelection();
});

都行

关于javascript - jQuery 单击 anchor 标记重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32032064/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com