всплывание до класса
Здравствуйте!
подскажите, пожалуйста, есть <div class="c"> <form> <input> и другие управляющие </form> </div> необходимо, когда жмут на любой из управляющих элементов формы в данном классе "с", определять родителя с этим классом "с" и делать действия. как то так надо, не знаю как применить селектор :input
$('.c :input').hover(
function(){
$(this).closest(".c").addClass("f");
},
function(){
$(this).closest(".c").removeClass("f");
}
);
Спасибо! |
Цитата:
поиск родителя с таким классом можно осуществить c помощью jQuery.parent([STR selector]) |
есть много div, в каждом из которых есть дочерние управляющие элементы. когда мы жмем на дочерний управляющий элемент, мы хотим узнать кто его родитель. сейчас $('.c').hover( нажимая на любой дочерний элемент мы определяем родителя, а нужно нажимая только на управляющий элемент
|
тогда нужно знать, до какого уровня необходимо подыматься.
если родительских дивов у элемента несколько, конечно. можно проделегировать фокусы на всех инпутах на странице, а в обработчике уже решать, подходит ли он нам, или нет допустим, эти все инпуты с их родителями находятся внутри div.mycont , а все инпуты вложены в несколько div'ов, но самый "главный" из них имеет отличительную особенность - это может быть класс, ид, атрибут, что-нибудь ещё. тогда код будет примерно следующим.
$(".mycont").delegate(":input", "focus blur", function(event){
var parent = $(this).parent("[id]");
if(event.type=="focus")
parent.addClass("f");
else
parent.removeClass("f");
});
|
а как думаете, там возможно?
$('.c div > form:input').hover(
function(){
$(this).closest(".c").addClass("f");
},
function(){
$(this).closest(".c").removeClass("f");
}
);
где $('.c div > form:input') по моей задумке, мы должны выбрать все элементы у тега form, которые лежат в блоке div класса "c" |
Цитата:
|
| Часовой пояс GMT +3, время: 03:51. |