0

我正在尝试使用browswerback按钮获取wordpress ajax帖子,这意味着当用户单击浏览器后退按钮时,之前通过单击帖子标题加载的帖子将显示,我想使用浏览器后退按钮显示上一篇文章,为此我已经使用了此代码,当用户单击帖子时它工作正常,但它不适用于浏览器后退按钮,我遇到了这个问题。谁能告诉我这个问题的解决方案。

    success: function(response) {
    jQuery("#loading-animation").addClass('loadingstyle');
    jQuery("#loading-animation").text(function(){
    if(location.hash){
    // We got a hash value! Lets take off the hash and smoke it.
    var newhash = window.location.hash.substring(1);
    jQuery("#loading-animation").html(response);
    // uncomment the above code to see if it works.
    }else{
    alert("No hash available.");
    // no hash value
    }
    $(".ajaxclick").click(function(e){
    e.preventDefault();
    window.location.hash = $(this).attr("href");
    });

    // $(window).on('hashchange', function() {

    window.onhashchange = function(){

    // hash changed. Do something cool.
    if(location.hash){

    var hash = window.location.hash.substring(1);
    //    console.log(response);
    jQuery("#loading-animation").html(response);

    }else{
     // load home page
    // jQuery("#loading-animation").html(response);
    alert("No more content to show");
    }
    }       
    });

    return false;
    }
4

2 回答 2

0

您正在使用e.preventDefault();哪些原因来停止进一步的事件(点击)。

所以e.preventDefault();从下面的代码中删除它

$(".ajaxclick").click(function(e){
      e.preventDefault();
     window.location.hash = $(this).attr("href");
});
于 2013-04-18T09:54:06.853 回答
0

你可以onchange用下面的代码替换函数吗?

window.onhashchange = function(){
     if(location.hash){
          var hash = $('.ajaxclick').attr('href');
          jQuery("#loading-animation").html(response);

     }else{
         alert("No more content to show");
     }
}       
于 2013-04-18T10:25:57.087 回答