Кастомный метод для элемента выборки.
Выбираю элемент $('#someid') или несколько элементов по классу $('.someclass') Мне нужно для элементов в этой выборке реализовать метод, например $('.someclass').ColorIt() , которым потом будет раскрашиватся текст инпута во все цвета радуги (задача взята от балды)
Не хочу делать этот метод глобальный, потому что на любом элементе он может и не сработать, нужно чтобы жтот метод работал только на элементах из выборки $('.someclass') как это сделать ? |
Цитата:
|
|
Яростный Меч,
Это обычный плагин для JQuery. Дело в том, что для некоторых елементов метод ColorIt не имеет смысла, например, если выберем скрытый input, то раскрашивать нам его не смысла $('input[type=hidden]').ColorIt(); не сработает. Я бы хотел не объявлять сначала метод ColorIt а потом привязывать его к элементу, а сразу на элементе сделать реализацию метода. |
Что то вроде
$('div').fn.ColorIt = function() {
this.filter(".a").each(function() {
$(this).css("color", "red");
});
};
|
Цитата:
var divs = $('div');
divs.ColorIt = function() {
this.filter(".a").each(function() {
$(this).css("color", "red");
});
};
divs.ColorIt();
только учти, что для другой выборки $('div') этого метода уже не будет. |
Спасибо, это то что нужно
|
а почему не
var divs = $('div .a');
divs.ColorIt = function() {
$(this).css("color", "red");
};
divs.ColorIt();
|
| Часовой пояс GMT +3, время: 03:58. |