<script type="text/javascript">
$(document).ready(function() {
$('a.details_link').bind('click', function(){
$(this).next('div.details').slideToggle('slow');
});
});
</script>
jQuery развёртывание множества блоков по ссылке
есть таблица из N блоков X, внутри каждого блока — ссылка Yn. как сделать так, чтобы ссылка Yn раскрывала только свой блок Xn?
table tr td div.details — блок.
table tr td a.details_link — ссылка.
Понятно, что каждый блок и каждую ссылку я могу пронумеровать уникальным id, но каким кодом в две строчки заставить работать их все? Не писать же к каждой паре код раскрыти/закрытия?
Код:
Блок следует ЗА ссылкой (next). Если блок перед ссылкой — prev. Если внутри — closest. Если ссылка в блоке — parent.
http://api.jquery.com/category/traversing/tree-traversal/
Сам спросил, сам ответил - оригинально. Итог - документация рулит.
Цитата: RussianSpy
Сам спросил, сам ответил - оригинально. Итог - документация рулит.
Оффтоп, но так бывает, что когда спросил, сразу сам догадался. Хз, может потому, что когда спрашиваешь, приходится немножко мысли в порядок привести дабы донести мысль.
Цитата: RussianSpy
Сам спросил, сам ответил - оригинально. Итог - документация рулит.
Да у меня мозги закипают... Будто с тобой не бывает так, что не можешь вспомнить даже как погуглить то, что лежит на поверхности. Можно, конечно, проспаться и вспомнить, но мне щас надо. Написали в джаббер-канале.
Раз тему уже создал, то не оставлять же без решение. Иначе на комментарий "уже разобрался", сами же и напишем "решение в студию"
Вот сразу видно тему в которой активно отписались старички форума :D
Могу добавить, что в jQuery 1.7 метод .on() предпочтительнее, чем .bind(). А ещё лучше использовать .click(). В нужном jQuery он будет нужным алиасом, и потом не возникнет проблем при миграции на новую версию.
Цитата: MrXaK
Могу добавить, что в jQuery 1.7 метод .on() предпочтительнее, чем .bind(). А ещё лучше использовать .click(). В нужном jQuery он будет нужным алиасом, и потом не возникнет проблем при миграции на новую версию.
Спасибо за ценное замечание. Применяю Jquery эпизодически и таких тонкостей не знаю.