首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用jquery单击来自替代元素的链接

用jquery单击来自替代元素的链接
EN

Stack Overflow用户
提问于 2012-09-29 16:21:48
回答 2查看 189关注 0票数 0

虽然在使用jQuery遍历DOM方面有很多好的资源,但我的示例没有任何进展。

在我的网站www.smithgrey.co.uk上,我有一系列缩略图画廊,它们前面都有一个“章节标题”div。

我想要实现的是,当你点击‘章节标题’div,第一个<a href>链接的缩略图右边将点击。

class="section-title"有多个实例--不幸的是,我无法添加任何ID或类,因为这是动态生成的,如果可能的话,还会被要求保留它。

HTML如下所示:

代码语言:javascript
复制
<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">,它都会点击链接。

代码语言:javascript
复制
$('div.section-title').click( function(){
       $(this).parent().next($('div.index-article')).children('a.fancybox').click();
     });

解决方案:

在其他评论员的帮助下,我设法想出了如何使它如我所料的那样工作:

代码语言:javascript
复制
$(document).ready(function() {
  $('div.section-title').click( function(){
    $(this).next('.index-article').find('a.fancybox:first').click();
  });
});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-29 16:37:15

我假设您已经用适当的就绪事件/等等设置了您的jQuery,这就是我要做的。请注意,我在超链接中添加了一个单击事件,以模拟jsfiddle示例中的单击。

http://jsfiddle.net/lucuma/s9mds/

代码语言:javascript
复制
$('div.section-title').click(function(e) {
    $(this).next('div').find('a:eq(0)').click(); 
});​
票数 0
EN

Stack Overflow用户

发布于 2012-09-29 16:50:27

使用这个

代码语言:javascript
复制
 $(document).ready(function() {
   $('div.section-title').click( function(){
     $(this).closest($('div.index-article').find('a.fancybox').click();
   });
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12654335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档