gpt4 book ai didi

javascript - Jquery Ajax 调用 HTML5 历史记录和后退按钮

转载 作者:太空宇宙 更新时间:2023-11-04 15:39:51 26 4
gpt4 key购买 nike

我已经阅读了很多相关内容,并且觉得虽然我理解了所有部分,但我无法弄清楚如何在不重做我的项目的情况下将它们组合在一起。我已经在我的网站上设置了ajax并且运行得很好。当新内容出现时,我能够在 URL 中添加 #。后退按钮可以工作,并且可以浏览所有正确的 URL,而无需重新加载页面,但 ajax 不会刷新。

这是我的按钮 HTML:

<a class="portfolioThumbnail" onclick="return false;" data-name="myPage" href="myPage.html">

<img src="imagepath" />

</a> <!-- portfolioThumbnail -->

这是我的 Jquery:

$('.portfolioThumbnail').on('click', function(){

var thisProject = $(this).attr('href')

$.ajax('http://oursite.com/' + thisProject, {
success: function(response) {
$('.projectWrapperReplace').html(response);
},
error: function() {

alert('error');
},
timeout: 5500,
beforeSend: function() {

$(this).find('.portfolioThumbnail').addClass('loading');

},
complete: function() {


$(".blurable").addClass('blur');

$(".blurable").addClass('whiteOut');



$('.projectWrapper').fadeIn('slow', function(){

$('.projectWrapper').addClass('noBlur');

window.location.hash = thisProject;


});

}

});

});

我的 HTML 中也有一个名为 projectWrapperReplace 的 div。看看是否有人可以帮助我完成这项工作。谢谢

最佳答案

当按下后退或前进按钮时,您需要一个事件监听器(现在,您仅在单击 .portfolioThumbnail 按钮时加载 ajax 内容)。

使 ajax 加载和状态类成为一个单独的函数,例如 hashChange()

结账 onhashchange

//call hashChange on window hash chage
window.onhashchange = hashChange;
//and also on buttonclick
$('.portfolioThumbnail').on('click', function() {
hashChange();
})

关于javascript - Jquery Ajax 调用 HTML5 历史记录和后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43989077/

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