всплывание до класса
Здравствуйте!
подскажите, пожалуйста, есть <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:05. |