Плагин Jquery, получающий DIV ID - PullRequest
2 голосов
/ 24 ноября 2011

Я хочу передать плагину идентификатор DIV, который его вызывает.

Решение называется так:

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

Но я бы хотел сделать что-то вроде этого:

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

Но «это» не относится к элементу myclass. Есть ли способ получить идентификатор myclass динамически?

1 Ответ

3 голосов
/ 24 ноября 2011

Проблема в том, что вы пытаетесь использовать «$ (this)» до того, как ваш код «myplugin» даже запустится.Нет прямого способа сделать то, что вы делаете, но это может сработать:

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

Делая это таким образом, вы позволяете jQuery устанавливать вызов функции для вашего обработчика «каждому» с каждым элементомсоответствие селектора индивидуально.При каждом вызове этой функции this будет ссылаться на один из элементов.Затем вы можете вызвать свой плагин, используя свойства этого элемента в вызове функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...