使用 jQuery 加载点击图片

Onload click on picture with jQuery

我有一个网站,我试图在加载网站时使用 jQuery 自动点击图片。我正在使用 wordpress,代码在页脚中实现。该站点是https://mobimania.si/trgovina/ovitek-print-gold-mandala-copy/,实际图片在"IZBERI MOTIV"部分。

我有代码,但由于某些原因它不起作用

jQuery("document").ready(function($) {
  setTimeout(function() {
    $("#mCSB_4.fpd-grid.fpd-item>picture").trigger('click');
  }, 10);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<div id="mCSB_4" class="mCustomScrollBox mCS-light mCSB_vertical mCSB_outside" style="max-height: none;" tabindex="0">
  <div id="mCSB_4_container" class="mCSB_container mCS_y_hidden mCS_no_scrollbar_y" style="position:relative; top:0; left:0;" dir="ltr">
    <div class="fpd-grid fpd-grid-contain fpd-padding">
      <div class="fpd-item fpd-hidden" data-title="252105" data-source="/wp-content/uploads/2019/02/252105-e1551204819312.jpg" data-search="252105">
        <picture data-img="/wp-content/uploads/2019/02/252105-e1551204819312-188x300.jpg"></picture>
      </div>
    </div>
  </div>
</div>

您首先需要修复

<script>jQuery function() {

我建议

$(function() { 
  setTimeout(function() { 
    $("#mCSB_4").find("picture").trigger('click'); 
  },10); 
});

您的选择器有误。您正在尝试单击具有 id=mCSB_4 且同时具有 .fpd-grid.fpd-item

的内容的直接子项

这些都行:

  • $("#mCSB_4").find("picture").trigger('click');

  • $("#mCSB_4 > .mCSB_container > .fpd-grid>.fpd-item > picture").trigger('click');
    直系后裔和

  • $("#mCSB_4 .mCSB_container .fpd-grid .fpd-item > picture").trigger('click');
    仅使用带空格的 类

注意这是假设该图片上有点击处理程序。

jQuery("document").ready(function($) {
  $("picture").on("click",function() {
    console.log("clicked")
  })
  setTimeout(function() {
    console.log("trying to click")
    $("#mCSB_4").find("picture").trigger('click');
  }, 10);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<div id="mCSB_4" class="mCustomScrollBox mCS-light mCSB_vertical mCSB_outside" style="max-height: none;" tabindex="0">
  <div id="mCSB_4_container" class="mCSB_container mCS_y_hidden mCS_no_scrollbar_y" style="position:relative; top:0; left:0;" dir="ltr">
    <div class="fpd-grid fpd-grid-contain fpd-padding">
      <div class="fpd-item fpd-hidden" data-title="252105" data-source="/wp-content/uploads/2019/02/252105-e1551204819312.jpg" data-search="252105">
        <picture data-img="/wp-content/uploads/2019/02/252105-e1551204819312-188x300.jpg"></picture>
      </div>
    </div>
  </div>
</div>

您的页面上有一些 JavaScript 错误,请修正。

关于您的问题:您的代码不起作用,因为您使用了错误的选择器,这个应该起作用:

$("#mCSB_4 .fpd-grid .fpd-item > picture").trigger('click');

请注意空格,您有一个 id="mCSB_4" 的元素,其中包含一个 class "fpd-grid" 的元素,其中包含 class [=21] 的元素=] 其中有一个 "picture child".

如果没有空格,您正在搜索具有 id="mCSB_4" 和那些 classes.

的元素