我会尽力解释我的问题。
我的问题是,如果一个AJAX调用正在运行,它必须在浏览器跟随用户点击的链接之前完成。我希望浏览器忽略AJAX调用并立即关注链接。
我做了一些测试并发现了这个:
也许我只是误解了jQuery AJAX异步调用是如何工作的。
这段代码的作用是立即启动AJAX调用,我确保需要很长时间才能完成。它让我有时间点击两个链接之一来测试问题。这就是我上面得出的结论。
<!DOCTYPE html>
<html>
<head>
<title>AJAX</title>
</head>
<body>
<a href="https://google.dk" style="display:block;font-size:40px;margin-bottom:20px;">1. Test link to Google</a>
<a href="/some-url" style="display:block;font-size:40px;margin-bottom:20px;">2. Test link to current domain</a>
<div style="border:1px solid black;width:800px;" id="test">Loading...</div>
</body>
<script
src="https://code.jquery.com/jquery-1.12.4.min.js"
integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ="
crossorigin="anonymous"></script>
<script>
$.ajax({
url: '/another-url',
success: function(response) {
$("#test").html(response);
}
});
</script>
</html>