jQuery Animate方法 - 持续时间不起作用

时间:2012-06-01 01:43:03

标签: jquery scroll duration

我有一个jQuery滚动设置,但持续时间不能正常工作。 在Wordpress网站的“关于页面”上,我想使用jQuery,以便在点击照片时,它会向下滚动到相应的div。滚动工作正常,但持续时间不是。滚动大约需要1/4秒,我设置持续时间的速度无关紧要。我所指的网站可以在http://teamcoding.ca/corporate/about-test/

看到

以下是jQuery滚动的源代码。

$(function(){
    $('a[href*=.staff_photos_indiv]').click(function() {
        if (location.pathname.replace(/^\//,") == this.pathname.replace(/^\//,") && location.hostname == this.hostname) {
            var $target = $target;
            $target = $(this.hash);
            $target = $target.length && $target || $('[name=' + this.hash.slice(1) +']');
            if ($target.length) {
                var targetOffset = $target.offset().top;
                $('html,body').animate({scrollTop: targetOffset}, {easing:'easeInOutExpo',duration:1600});
                return false;
            }
        }
    }); 
});

3 个答案:

答案 0 :(得分:3)

我的猜测是你没有定义'easeInOutExpo'缓动函数,因为一般操作适用于这段代码:

$(document.body).animate(
    {scrollTop: "400px"}, {easing: "swing", duration: 1600}
);

而且,你可以在这里看到它:http://jsfiddle.net/jfriend00/UbnUh/

答案 1 :(得分:0)

jQuery选择器中有错误。

Uncaught Error: Syntax error, unrecognized expression: [href*=.staff_photos_indiv]

这就是为什么click事件甚至没有被解雇的原因。 你看到的只是a href="#...以正常方式行事。

答案 2 :(得分:0)

调试方法是在chrome中打开页面,右键单击并选择“Inspect Element”最后一个菜单选项。

选择右侧最后一个选项卡,控制台,您将看到JavaScript中是否存在任何错误:

Uncaught Error: Syntax error, unrecognized expression: [href*=.staff_photos_indiv] 

相反,尝试一个更简单的选择器:

$('.staff_photos_indiv').click( ...