点击页面上的元素加载

时间:2016-10-18 02:37:08

标签: javascript jquery html css

所以我正在使用Squarespace模板,并且我认为发生某种行为的最简单方法(基本上显示一个通常在点击横幅之前一直保持隐藏的div)就是伪造点击横幅本身。

我有两个问题:

  1. 不能一致地挑出特定元素,因为ID似乎每次都会部分改变。所以我需要基本上得到这个类的第一个元素和锚标记。
  2. 通过所有嵌套,我不确定究竟需要点击什么。它是div,还是锚标签,还是什么?
  3. 以下是代码:

    <div class="item sqs-gallery-design-autocolumns-slide" id="someidthatchanges" data-type="image" style="top: 0px; left: 0px; width: 1440px; height: 514px;" overlaydelay="236">
          <a href="thelink" data-dynamic-load="" data-dynamic-receiver="#somestuff" id="idthatchanges">
            <div class="wrapper" id="idthatchanges">
              <div class="project-title" id="idthatchanges">
                <h2 id="idthatchanges">+</h2>
                <h3>— view —</h3>
              </div>
            </div>
            <img src="someUnimportantImage.gif"/>
         </a>
    </div>
    

    这是我不成功的jQuery尝试:

    $("document").ready(function() {
      $('#changingDivID').find('a').trigger('click');
    });
    

    上述内容在控制台中也不起作用(即使ID正确无误),但也没有出现任何错误,因此它似乎是某种定位问题。

    有什么想法吗?

2 个答案:

答案 0 :(得分:2)

调用.trigger('click')或jQuery的.click()方法实际上并不触发锚点的默认点击行为(它只触发与jQuery和内联点击处理程序绑定的事件处理程序)。您可以通过调用DOM元素的本机.click()方法来解决这个问题。

将其与您关于使用类定位第一个元素的说明放在一起:

$("document").ready(function() {
  $('.sqs-gallery-design-autocolumns-slide:first a')[0].click();
});
  

我不确定究竟需要点击什么。它是div,还是锚标签,还是什么?

显示的HTML没有任何内联事件处理程序,因此我们无法确定您应该定位哪个元素。除了逻辑上它应该是锚点,因为只有键盘用户可以“点击”。

答案 1 :(得分:0)

也许你想要的是这样的。

$(document).ready(function(){
 $(".item.sqs-gallery-design-autocolumns-slide").find("a").click();
})