setTimeout无法使div加载或锚定

时间:2019-06-25 18:41:01

标签: javascript

尝试在30秒后加载div,并且代码非常简单,理想情况下应该可以运行。我想在30秒后加载div内容,所以我试图单击一个虚拟锚。我知道我们可以直接使用settimeout加载div而没有虚拟锚,但是它不起作用,所以我尝试了触发。我尝试了延迟和所有其他功能。 jQuery已加载。因为当我手动单击它们时它们会起作用

$(document).ready(function() {
  setTimeout(function() {
    $('#999').trigger('click');
  }, 5000);

});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="#popup_chrome" class="popup_chrome" id="999">Chrome Extension</a>
<div id="popup_chrome" class="overlay">
  <div class="popup">
    <h2>Download Chrome Extension</h2><br>
    <a class="close" href="#">×</a>
    <div class="content">
      <br /><a href="dfdfd" target="_blank" class="myButton_sub">Download</a>
    </div>
  </div>
</div>

1 个答案:

答案 0 :(得分:0)

使用模板保存弹出窗口,然后在超时时用模板内容填充一些容器:

$(document).ready(function() {
  setTimeout(function() {
    $('#container').html($('#popup_content').html());
  }, 4000);
});
#popup_chrome {
  margin: 15px;
  width: 50vw;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
  border: 1px solid silver;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<h5>Wait for it...</h5>
<div id="container"></div>
<template id="popup_content">
<div id="popup_chrome" class="overlay">
  <div class="popup">
    <h2>Download Chrome Extension</h2><br>
    <a class="close" href="#">×</a>
    <div class="content">
      <br /><a href="dfdfd" target="_blank" class="myButton_sub">Download</a>
    </div>
  </div>
</div>
</template>