我正在使用两个不同的jQuery函数,其中一个似乎正在取消另一个

时间:2012-05-10 05:44:37

标签: javascript jquery

我正在尝试使用两个jquery用于灯箱,而滚动条用于我正在构建的单页网站。它们都可以自己工作,但是当我把它们放在同一页面上时,滚动条似乎取消了灯箱,使其无效。

这是灯箱代码:

<script type="text/javascript" charset="utf-8">
    $(document).ready(function(){
        $("a[rel^='prettyPhoto']").prettyPhoto();
    });
</script>

这是滚动码:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<script type="text/javascript">// <![CDATA[
$(document).ready(function() {
    function filterPath(string) {
        return string.replace(/^\//, '').replace(/(index|default).[a-zA-Z]{3,4}$/, '').replace(/\/$/, '');
    }
    $('a[href*=#]').each(function() {
        if (filterPath(location.pathname) == filterPath(this.pathname) && location.hostname == this.hostname && this.hash.replace(/#/, '')) {
            var $targetId = $(this.hash),
                $targetAnchor = $('[name=' + this.hash.slice(1) + ']');
            var $target = $targetId.length ? $targetId : $targetAnchor.length ? $targetAnchor : false;
            if ($target) {
                var targetOffset = $target.offset().top;
                $(this).click(function() {
                    $('html, body').animate({
                        scrollTop: targetOffset
                    }, 2000);
                    return false;
                });
            }
        }
    });
});​
// ]]></script>

1 个答案:

答案 0 :(得分:1)

我注意到您的滚动条代码包含jquery.js,但prettyPhoto代码却没有。在您的实际网页上,您应该只在$(document).ready()之前包含一次jquery.js。