我正在学习如何使用jquery制作AJAX并找到了突出效果的方法:
$("#main_table > tbody > tr:first").effect('highlight', {}, 3000)
有没有办法为高亮效果制作3000默认速度,所以我不必在所有位置重复它?
我知道可以更改默认的jquery fx速度,但是对于所有效果都会改变,我想仅为单个效果更改默认值。
答案 0 :(得分:2)
您可以为使用默认速度的效果编写一个简单的包装器:
function highlight(elems){
elems.effect("highlight", {}, 3000)
}
答案 1 :(得分:1)
您可以在jQuery UI中覆盖effect
函数:
(function($) {
$.fn.extend({
_effect: $.fn.effect, // backup the original function
effect: function(effect, options, speed, callback) {
if (effect === 'highlight') speed = 3000;
// compose the arguments
var args = [effect, options || {}];
if (speed !== undefined) args.push(speed);
if (callback !== undefined) args.push(callback);
// call the original function
return this._effect.apply(this, args);
}
});
})(jQuery);