jQuery: исключить $ (this) из селектора
У меня есть что-то вроде этого:
Когда одна из этих ссылок нажата, я хочу выполнить функцию .hide () на ссылках, которые не нажаты. Я понимаю, что jQuery имеет: not selector, но я не могу понять, как его использовать в этом случае, потому что необходимо, чтобы я выбирал ссылки, используя $(".content a")
Я хочу сделать что-то вроде
- std :: shared_ptr этого
- В чем разница между «$ (this)» и «this»?
- В чем разница между этим и Activity.this
- Разница между getContext (), getApplicationContext (), getBaseContext () и "this"
- Управление значением «this» в событии jQuery
$(".content a").click(function() { $(".content a:not(this)").hide("slow"); });
но я не могу понять, как правильно использовать: not selector в этом случае.
- Java утечка этого в конструкторе
- Может ли «это» когда-либо быть пустым в Java?
- Когда «жирная стрелка» (=>) привязывается к «этому» экземпляру
- this: Невозможно использовать это в статическом контексте
- 'this' vs $ scope в controllerах AngularJS
- Когда следует использовать «это» в classе?
- Разница между $ (this) и этим в jquery
- Когда вызывать контекст активности или контекст приложения?
Попробуйте использовать метод not()
вместо селектора :not()
.
$(".content a").click(function() { $(".content a").not(this).hide("slow"); });
Вы можете использовать функцию not
а не :not
selector:
$(".content a").not(this).hide("slow")
Вы также можете использовать метод jQuery .siblings()
:
HTML
Javascript
$(".content").on('click', 'a', function(e) { e.preventDefault(); $(this).siblings().hide('slow'); });
Рабочая демонстрация: http://jsfiddle.net/wTm5f/
Вы должны использовать метод «siblings ()» и не запускать селектор «.content a» снова и снова только для применения этого эффекта:
HTML
CSS
.content { background-color:red; margin:10px; } .content.other { background-color:yellow; }
Javascript
$(".content a").click(function() { var current = $(this).parent(); current.removeClass('other') .siblings() .addClass('other'); });
См. Здесь: http://jsfiddle.net/3bzLV/1/