Mat*_*att 1 javascript jquery jquery-plugins
我正在编写一个jQuery插件,需要跟踪页面中使用该插件的对象数量.有没有办法在插件中创建一个跟踪自身实例的静态变量?
这是我到目前为止插件的内容:
(function ($) {
$.fn.my_plugin = function (options)
{
var plugin_count = 0;
return this.each(function() {
alert(++plugin_count);
});
}
}(jQuery));
Run Code Online (Sandbox Code Playgroud)
在我的页面上:
<div class="plugin_div"></div>
<div class="plugin_div"></div>
<div class="plugin_div"></div>
<div class="plugin_div"></div>
<script language="javascript">
$('.plugin_div').my_plugin();
</script>
Run Code Online (Sandbox Code Playgroud)
当页面加载时,我收到四个警报,显示"1".
我怎么写这个,以便变量为每个调用的元素递增my_plugin()?
编辑:修复了糟糕的copypaste工作.
你可以这样做:
(function ($) {
$.fn.my_plugin = function (options)
{
$.fn.my_plugin.count = $.fn.my_plugin.count || 0;
return this.each(function() {
alert(++$.fn.my_plugin.count);
});
}
}(jQuery));
Run Code Online (Sandbox Code Playgroud)
或者不要使用$.fn但是$.my_plugin.count你也可以定义插件的默认值:
$.my_plugin = {
count : 0,
defaults : {}
};
// Extend options with plugin defaults!
$.extend(options, $.my_plugin.defaults);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1699 次 |
| 最近记录: |