Учитывая следующую структуру:
<table class="myTable">
<tr>
<td class="block.productgrid.quickview.cell">
<a class="myLink">My Link</a>
</td>
</tr>
<tr>
<td>
<div class="contentsForColorbox">
Some contents
</div>
</td>
</tr>
</table>
... где у меня было бы несколько таких таблиц myTable, как я могу соединить щелчок по myLink с отображением contentForColorbox в палитре цветов?
Я думаю, что близок, но что-то упускаю:
$( '.myLink', this).click( function(){
$.colorbox({
inline : true,
'href': $( '.contentsForColorbox') ,
'width': 500,
'height': 350
});
});
... на данный момент, если у меня есть 5 таблиц, 5 из «contentsForColorbox» будут отображаться в палитре цветов. Вздох, слишком длинный день :-(
1 ответ
Проблема заключается в используемом селекторе - $( '.contentsForColorbox')
, он нацелен на все элементы с заданным классом, вместо этого вам нужно найти цель относительно нажатой ссылки.
$( '.myLink', this).click( function(){
$.colorbox({
inline : true,
'href': $(this).closest('table').find('.contentsForColorbox') ,
'width': 500,
'height': 350
});
});
Демонстрация: Fiddle
Похожие вопросы
Новые вопросы
jquery
jQuery — это библиотека JavaScript. Также рассмотрите возможность добавления тега JavaScript. jQuery — это популярная кросс-браузерная библиотека JavaScript, которая упрощает обход объектной модели документа (DOM), обработку событий, анимацию и взаимодействие AJAX, сводя к минимуму расхождения между браузерами. Вопрос с тегом jQuery должен быть связан с jQuery, поэтому jQuery должен использоваться рассматриваемым кодом, и в вопросе должны быть как минимум элементы, связанные с использованием jQuery.