如何改变网站范围内的jQuery slideUp/slideDown持续时间

How to change site-wide jQuery slideUp/slideDown duration?

本文关键字:jQuery slideUp 持续时间 slideDown 范围内 网站 何改变 改变      更新时间:2023-09-26

是否有办法调整默认的slideUp()和slideDown()持续时间在jQuery?我有一个网站,其中有一堆slideUp/slideDown呼叫,我想改变他们的持续时间网站范围。我能找到的唯一选项:

  • 正则表达式搜索和替换我所有的JS代码。可能,我可以插入一个变量,以便稍后再次更改持续时间。但是如果有一个jQuery设置会更方便,特别是减少测试时间。
  • 编辑jQuery本身。由于维护原因,这不是一个可行的选择。

您可以这样重写它们:

$.prototype.slideDown = (function(slideDown){
    var defaultSpeed = 2000;
    return function(speed){
        slideDown.call( this, speed || defaultSpeed );
    };
})($.prototype.slideDown);

然后对slideup函数执行相同的操作:

$.prototype.slideUp = (function(slideUp){
    var defaultSpeed = 2000;
    return function(speed){
        slideUp.call( this, speed || defaultSpeed );
    };
})($.prototype.slideUp);

那么就叫它:

$('#whatever').slideUp();

请确保在开始使用它们之前覆盖它们

你可以这样改变默认的动画速度:

$.fx.speeds._default = 1000;

重要提示:我认为这将改变每个jQuery动画的默认速度,在这种情况下可能不是理想的