虽然在使用jQuery遍历DOM方面有很多好的资源,但我的示例没有任何进展。
在我的网站www.smithgrey.co.uk上,我有一系列缩略图画廊,它们前面都有一个“章节标题”div。
我想要实现的是,当你点击‘章节标题’div,第一个<a href>链接的缩略图右边将点击。
class="section-title"有多个实例--不幸的是,我无法添加任何ID或类,因为这是动态生成的,如果可能的话,还会被要求保留它。
HTML如下所示:
<body>
<div id="content-grid">
<div class="section-title">
<span class="section-title-type">Title of the first thumbnail gallery</span>
</div>
<div class="index-article">
<a href="#" class="fancybox">
<img src="thumbnail-1">
</a>
</div>
<div class="section-title">
<span class="section-title-type">Title of the second thumbnail gallery</span>
</div>
<div class="index-article">
<a href="#" class="fancybox">
<img src="thumbnail-2">
</a>
</div>
<div class="index-article">
<a href="#" class="fancybox">
<img src="thumbnail-3">
</a>
</div>
<div class="index-article">
<a href="#" class="fancybox">
<img src="thumbnail-4">
</a>
</div>
</div>
</body>到目前为止,这是我的jQuery,但是它没有产生我想象的结果,因为无论我单击第一个还是第二个<div class="section-title">,它都会点击链接。
$('div.section-title').click( function(){
$(this).parent().next($('div.index-article')).children('a.fancybox').click();
});解决方案:
在其他评论员的帮助下,我设法想出了如何使它如我所料的那样工作:
$(document).ready(function() {
$('div.section-title').click( function(){
$(this).next('.index-article').find('a.fancybox:first').click();
});
});发布于 2012-09-29 16:37:15
我假设您已经用适当的就绪事件/等等设置了您的jQuery,这就是我要做的。请注意,我在超链接中添加了一个单击事件,以模拟jsfiddle示例中的单击。
http://jsfiddle.net/lucuma/s9mds/
$('div.section-title').click(function(e) {
$(this).next('div').find('a:eq(0)').click();
});发布于 2012-09-29 16:50:27
使用这个
$(document).ready(function() {
$('div.section-title').click( function(){
$(this).closest($('div.index-article').find('a.fancybox').click();
});
});https://stackoverflow.com/questions/12654335
复制相似问题