基本上我想创建一个jquery插件,它将在页面加载时显示加载动画。为它创建一个jquery很容易。
你可以在这里看到:
$.fn.prelodr = function(options) {
var settings = $.extend({
delay: 1000,
}, options);
return this.each(function() {
var $elm = $(this)
, d = settings.delay;
$(window).load(function() {
$('.preloadback').delay(d).slideUp(300);
});
});
}
并使用$('.preloadback').prelodr();
我使用此功能。
现在,我在多个页面上有这个加载器,所以我将这个代码移动到js文件并将其包含在项目中。它没有问题。
问题: 我想使用
提供延迟选项$('.preloadback').prelodr({delay:5000,});
我在文档页脚中使用此函数调用。问题是它被调用两次。如何在js文件中保留初始函数调用,并从页面覆盖默认选项?
答案 0 :(得分:0)
如果您的自定义延迟调用首先发生,您可以在该元素上设置一个标志,以便在第二次调用时忽略它。
$.fn.prelodr = function(options) {
var settings = $.extend({
delay: 1000,
}, options);
return this.each(function() {
var $elm = $(this)
, d = settings.delay;
if($elm.data('prelodr-loaded')) { return; }
else { $elm.data('prelodr-loaded', true); }
$(window).load(function() {
$('.preloadback').delay(d).slideUp(300);
});
});
}