我正在编写一个jquery插件,我想用用户最喜欢的速度设置fadeOut
。我在我的html文件中有这个代码:
$("div").test({
fadeOutSpeed:"2"
})
这样的东西是我的jquery插件文件:
(function($) {
$.fn.test = function(action) {
var setting = $.extend({
fadeOutSpeed: "2",
}, action);
this.each(function() {
var element = $(this);
element.click(function() {
element.slideUp(setting.fadeOutSpeed);
});
});
}
})(jQuery)
它不起作用,用户无法设置最喜欢的速度来淡出div
元素。我该如何解决这个问题?
答案 0 :(得分:1)
您的脚本中有一个未定义的变量element
。
如果您定义变量,那么事情就可以了:
(function($) {
$.fn.test = function(action) {
var setting = $.extend({
fadeOutSpeed: "2",
}, action);
this.each(function() {
var element = $(this);
element.click(function() {
element.slideUp(setting.fadeOutSpeed);
});
});
}
})(jQuery)
请注意,slideUp
中的速度是毫秒,因此您可能希望以较慢的时序测试脚本,例如:
$("div").test({
fadeOutSpeed: 2000
})