gpt4 book ai didi

javascript - jQuery ready() 的替代方法,用于检测 URL 中的页面 anchor 是否发生变化

转载 作者:行者123 更新时间:2023-11-30 13:42:43 24 4
gpt4 key购买 nike

有谁知道如何在 URL 中的页面 anchor 发生变化时触发页面加载事件,即从

http://mywebsite.com/#test1  
to
http://mywebsite.com/#test2

什么时候使用后退按钮?

我尝试了底部的代码(history.navigationMode 行和 ready() 函数确保即使在浏览器的后退按钮按下时也会触发 onload 事件使用),但如果仅更改 URL 的页面 anchor 部分并使用“后退”按钮,则它不起作用。我知道如果 URL 更改它的查询字符串(或 URL 指向一个新的文件/文件夹),这段代码会起作用,因为我一直在使用它,但看起来 jQuery 的 ready() 函数在使用后退按钮时不会触发如果只是 URL 中的页面 anchor 位置发生变化。

我正在尝试提出一种解决方案,使浏览器的后退按钮保留页面的 JavaScript/AJAX 操作,我的尝试基于此人的想法:http://www.ajaxonomy.com/2008/web-design/a-better-ajax-back-button-part2但不依赖于使用重复计时器来检查 URL 页面 anchor 是否已更改 - 我宁愿在页面加载事件触发时检查它。

有什么想法/建议吗?

<script language="javascript" type="text/javascript" src="/jquery.js"></script>
<script language="javascript" type="text/javascript">
history.navigationMode = 'compatible';
$(document).ready( function() {
if(document.location.hash){
var hashQueryString = document.location.hash;
hashQueryString = hashQueryString.replace("#","");
alert(hashQueryString);
}
});

最佳答案

在不久的将来,我们将拥有 onhashchange事件,它正在被引入到新的浏览器中,IE8 已经支持它。

但现在,我建议您看看以下解决方法:

关于javascript - jQuery ready() 的替代方法,用于检测 URL 中的页面 anchor 是否发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1308554/

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