Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery减慢淡入淡出动画的速度_Javascript_Jquery_Animation_Jquery Animate - Fatal编程技术网

Javascript jQuery减慢淡入淡出动画的速度

Javascript jQuery减慢淡入淡出动画的速度,javascript,jquery,animation,jquery-animate,Javascript,Jquery,Animation,Jquery Animate,我使用的是一个单页网站。默认情况下,当我单击另一个页面时,会立即淡出/淡入,代码如下: $('#page_holder').pagify({ pages: ['about', 'directory', 'archive','contribute'], animationOut: 'fadeOut', animationOutSpeed: '100', animation: 'fadeIn', animationSpeed: '100',

我使用的是一个单页网站。默认情况下,当我单击另一个页面时,会立即淡出/淡入,代码如下:

$('#page_holder').pagify({
      pages: ['about', 'directory', 'archive','contribute'],
      animationOut: 'fadeOut',
      animationOutSpeed: '100',
      animation: 'fadeIn',
      animationSpeed: '100',
      'default': 'about',
      cache: true 
    });
这很好,但是速度太快了,理想情况下,当我点击另一个页面时,我希望
fadeOut
/
fadeIn
都以更慢的速度执行


我曾尝试对动画应用快、慢以及各种毫秒,但似乎没有任何变化。

您是否尝试过将动画速度设置为数字而不是字符串?像
100
而不是
'100'

Pagify.js使用jQuery自己的动画功能。jQuery使用实际数字作为其动画持续时间值。唯一允许的字符串值是
'fast'
'slow'
,它们将用于查找实际的预定义数字。任何其他字符串将导致使用默认值。从技术上讲,“\u default”也可以使用,但实际使用它没有意义,因为它无论如何都会默认为默认值

因此,由于您要传入100的字符串版本:
“100”
,jQuery将完成以下操作(下面是相关的代码片段)

  • if(类型为“100”!=“数字”)

    是的,因为它是“字符串”

  • if(jQuery.fx.speeds中的“100”)

    错误,速度仅适用于快速、慢速和默认值

  • opt.duration=jQuery.fx.speeds.\u默认值

    设置默认的持续时间

  • 修复:使用实际数字,而不是字符串版本


    jQuery的预定义速度

    jQuery的动画功能

    调用speed()函数以获取要使用的正确设置/方法

    speed()函数

    确定要使用的正确持续时间


    谢谢,效果很好…我如何在“淡出”和“淡出”之间添加一个“延迟”?粗略地看一下文档就可以知道这目前是不可能的。您可以在此处提交问题:
    jQuery.fx.speeds = {
      slow: 600,
      fast: 200,
    
      // Default speed
      _default: 400
    };
    
    animate: function( prop, speed, easing, callback ) {
      var empty = jQuery.isEmptyObject( prop ),
          optall = jQuery.speed( speed, easing, callback ),
    
    if ( typeof opt.duration !== "number" ) {
      if ( opt.duration in jQuery.fx.speeds ) {
          opt.duration = jQuery.fx.speeds[ opt.duration ];
    
      } else {
          opt.duration = jQuery.fx.speeds._default;
      }
    }