jQuery的选项卡:如何停止在点击跳转?(Jquery tabs: How do I stop t

2019-10-17 06:03发布

我增加了一些JQuery的标签,我每次点击其中一个链接的ID时间被添加到URL,并跳转到的URL,这实在是烦人。 我已经看过像设定的时间了几个补丁并停止回传,但似乎没有任何工作,没有任何人有什么想法?

<script type="text/javascript">

      $(document).ready(function () {        

          $('.moo').click(function (evt) {
            // stops from submitting the form
            evt.preventDefault();
            return false;
        });


        $("#tabs").tabs();

        setTimeout(function () {
            if (location.hash) {
                window.scrollTo(0, 0);
            }
        }, 1);

    });

</script>




<div id="tabs">
    <ul>
        <li><a href="#tabs-1" class="moo" onclick="return false;" >Nunc tincidunt</a></li>
        <li><a href="#tabs-2" class="moo" onclick="return false;" >Proin dolor</a></li>
    </ul>

    <div id="tabs-1">
        <uc1:PrizeDrawMiniListControl ID="PrizeDrawMiniListControl1" runat="server" />
    </div>

    <div id="tabs-2">
        <uc2:MostViewedControl ID="MostViewedControl1" runat="server" />
    </div>
</div>

编辑:

链接是不是回发,它只是滚动

Answer 1:

http://jsfiddle.net/3au7K/其现在工作的罚款。

改变你的JavaScript函数来此

$(document).ready(function () {        

      $('.moo').click(function (evt) {
        // stops from submitting the form
        evt.preventDefault();
        return false;
    });


    $("#tabs").tabs();

    // This will work for dynamically added tabs as well

    $("#tabs ul li").delegate('a', 'click', function(e){
         e.preventDefault();
         return false;
    });
});

这个小技巧将做的伎俩。 有什么不对因为jQuery卡口都没有得到初始化后,需要href属性。



Answer 2:

删除onclick=return false; 从锚标记,并尝试这样的:

$('a[href^="tabs-"]').on('click', function(e) {
  e.preventDefault();
});


Answer 3:

这将防止任何锚固装置是从jQuery的标签:)(移动滚动位置恢复到初始点击)跳跃。

$('div.ui-tabs ul li a').click(function(e) {
  e.preventDefault();
  scroll_position = $(window).scrollTop();
  $('html, body').animate({
    scrollTop: scroll_position
  }, 0);
});


文章来源: Jquery tabs: How do I stop the jump on click?