Javascript防止默认不执行

时间:2013-05-08 12:46:57

标签: javascript html ajax preventdefault

我是javascript的新手,我一直在使用防止ajax分页的默认命令,我有以下代码:

http://jsfiddle.net/6pqfH/2/

$('.pagination').click(function(e){
    e.preventDefault();
    // fade out current content
    $('.results').css("opacity", "0.5");
    // load new content
    // ....
    // unfade
    $('.results').css("opacity", "1");
    // go back up to top of the page
    $('html,body').scrollTop(0);
});

但是,它似乎不起作用,它链接到新页面而不是执行淡入淡出并将其带回页面顶部。我已经检查了不透明度和scoll的代码,它似乎是正确的,所以我在哪里错了?

2 个答案:

答案 0 :(得分:2)

它完成了两个步骤,你没有看到它的原因是它立刻就做到了。您需要添加延迟或动画来分解它。

$('.pagination').click(function(e){
    e.preventDefault();
    // fade out current content
    $('.results').css("opacity", "0.5");
    // load new content
    // ....
    // unfade
    $('.results').fadeTo('slow', 1, function() {
      $('html,body').scrollTop(0);
    });

});

答案 1 :(得分:0)

这就是我想你想要的:

http://jsfiddle.net/6pqfH/6/

<a class="pagination" id="num" href="#">4</a>  

我用href =“#”替换了hred =“/ test”,这样a就会把你带到顶端。