我想向插件传递正在调用它的DIV的ID。
解决方案就是这样称呼它:
$('#mydiv').myplugin({
myproperty : $('#mydiv').attr('id')
});
但我想做这样的事情:
$('.myclass').myplugin({
myproperty : $(this).attr('id')
});
但是“this”并不是指myclass元素。有没有办法获得myclass id dinamically?
答案 0 :(得分:3)
问题是你在“myplugin”代码运行之前尝试使用“$(this)”。没有直接的方法来做你正在做的事情,但这可能有效:
$('.myclass').each(function() {
$(this).myplugin({property: $(this).attr('id')});
});
这样做,允许jQuery设置对“each”处理程序的函数调用,每个元素单独匹配选择器。在每次调用该函数时,this
将引用其中一个元素。然后,您可以使用函数调用中该元素的属性调用插件。