jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了溢出:隐藏中断jQuery滑块大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_673_2@
当你点击一个链接时,我有一个在div之间来回弹跳的滑块.它一直工作,直到你添加溢出:隐藏,然后一切都中断!

我为任何人创建了一个demo.您会注意到它有效,但是尝试添加overflow:hidden到.clickWrapper div来隐藏div滑入并且它会中断.当您单击所需的div时,它将滚动浏览其他div.

http://jsfiddle.net/z67tZ/

$(function() {
    $(".clickIt a").click(function() {
        var linked = $(this).attr("href");
        var pos = $(linked).position();
        $(".clickSlider").stop().animate({
            left: -pos.left,},500);
    });
});
<div id="wrapper">
    <div class="clickIt">
        <a href="#one">one</a>
        <a href="#two">two</a>
        <a href="#three">three</a>
    </div>
    <div class="clickWrapper">
        <div class="clickSlider">
            <div id="one">one</div>
            <div id="two">two</div>
            <div id="three">three</div>
        </div>
    </div>
</div>
#wrapper {margin: 0 auto; width: 200px;  }
.clickWrapper {BACkground:red; position:relative; overflow:hidden; BACkground-color: #CCc; height: 200px; }
.clickSlider { position: relative; width: 600px; }
#one,#two,#three { float: left; width: 200px; }
@H_673_2@

解决方法

尝试阻止认的hashchange,如下所示:

$(".clickIt a").click( function (E) {
    e.preventDefault();
    var linked = $(this).attr("href"),pos = $(linked).position().left;

    $(".clickSlider").stop().animate({left: -pos},500 );
});

FIDDLE

我不完全确定为什么会这样?

我的2cents是尝试滚动到任何锚点的浏览器本机函数,该锚点匹配在哈希前面单击的href属性.

页面尝试向下滚动到与href具有相同锚点的元素时,这会导致位置混乱.

当使用带有散列的href值并且匹配滚动以外的任何元素ID时,添加preventDefault(或者即使不需要在此处停止任何传播也返回falsE)总是一个好主意,以避免怪异的错误像这个.

@H_673_2@ @H_673_2@
@H_673_2@
@H_673_2@

大佬总结

以上是大佬教程为你收集整理的溢出:隐藏中断jQuery滑块全部内容,希望文章能够帮你解决溢出:隐藏中断jQuery滑块所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。