Jquery插件获取DIV ID

时间:2011-11-24 12:11:31

标签: jquery jquery-plugins

我想向插件传递正在调用它的DIV的ID。

解决方案就是这样称呼它:

$('#mydiv').myplugin({
        myproperty : $('#mydiv').attr('id') 
    });

但我想做这样的事情:

$('.myclass').myplugin({
    myproperty : $(this).attr('id') 
});

但是“this”并不是指myclass元素。有没有办法获得myclass id dinamically?

1 个答案:

答案 0 :(得分:3)

问题是你在“myplugin”代码运行之前尝试使用“$(this)”。没有直接的方法来做你正在做的事情,但这可能有效:

$('.myclass').each(function() {
  $(this).myplugin({property: $(this).attr('id')});
});

这样做,允许jQuery设置对“each”处理程序的函数调用,每个元素单独匹配选择器。在每次调用该函数时,this将引用其中一个元素。然后,您可以使用函数调用中该元素的属性调用插件。