gpt4 book ai didi

jquery - 使用 AJAX 然后点击链接

转载 作者:行者123 更新时间:2023-12-01 01:38:07 24 4
gpt4 key购买 nike

我在 jQuery 中处理 AJAX 函数然后点击链接时遇到问题。我有一个函数可以在页面上的任何点击上运行,例如 jQuery('body').live('click', function(event) {});

此事件可能是也可能不是链接。在这个回调中我有类似 jQuery.post(); 的内容运行。因此,只要在主体的任何地方发生点击事件,它就会运行。当此点击是链接或链接内的某种 div 时,就会出现我的问题。我尝试过这样的事情:

event.preventDefault();

后跟

if ( jQuery(event.target).attr('href').length ) {
var url = jQuery(event.target).attr('href');
window.setTimeout(function(){document.location.href=url;}, 1000); // timeout and waiting until effect is complete
}

但问题是,如果你有类似 <a><div></div></a> 的东西这是行不通的。我的问题是......

是否有可靠的方法来暂停正在跟踪的链接,处理 AJAX,然后恢复跟踪该链接?

最佳答案

一种解决方案:

$("a").live('click',function(e){
e.preventDefault();
var url = this.href;
setTimeout(function(){
location.href = url;
},1000);
});

我只是想知道这是否会影响任何其他可能具有绑定(bind)了事件的 anchor 标记的 WordPress 插件。

编辑:要添加到此,您可能还想确保请求是针对不同的页面:

$("a").live('click',function(e){
var url = this.href;
if (url == location.href) {
return;
}
e.preventDefault();
setTimeout(function(){
location.href = url;
},1000);
});

关于jquery - 使用 AJAX 然后点击链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7932756/

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