javascript - 如何等待/检查元素是否存在

标签 javascript jquery

我想知道有没有办法让我检查元素是否存在,然后执行一个函数,然后重复但使用下一个 id。

示例:如果 log2643673 存在执行函数,则检查或等待 log2643674 存在,如果存在则执行函数

如果它不存在,请继续检查它是否存在并执行功能,然后找到下一个元素是否存在

var checkExist = setInterval(function() {
   if ($('#log2643673').length) {
      console.log("it exists!");
   }
}, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<li id="log2643670" data-log="2643670" class="logs">Text here</li>

<li id="log2643671" data-log="2643671" class="logs">Text here</li>

<li id="log2643672" data-log="2643672" class="logs">Text here</li>

<li id="log2643673" data-log="2643673" class="logs">Text here</li>

抱歉我的英语不好

最佳答案

试试这个

$(function() {
    var logIdStart = 2643670; // the start log id
    // timer to check if element exists
    var checkExist = setInterval(function() {
       if ($("#log" + logIdStart ).length) {
          console.log("it exists!");
          logIdStart++; // update id only if element is found             
       }
    }, 1000 /* change checking frequency if needed*/ );

});

在这里播放

$(function() {
    var logIdStart = 2643670; // the start log id
    $('button').on('click',function(){   
    	$("body").append('<li id="log'+logIdStart+'">log'+logIdStart+'</li>');
    
    });
    // timer to check if element exists
    var checkExist = setInterval(function() {
       if ($("#log" + logIdStart ).length) {
          $("body").append("log" + logIdStart + " exists!<br />");
          logIdStart++;
       }
    }, 1000 /* change checking frequency if needed*/ );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li id="log2643670" data-log="2643670" class="logs">Text here</li>

<li id="log2643671" data-log="2643671" class="logs">Text here</li>

<li id="log2643672" data-log="2643672" class="logs">Text here</li>

<li id="log2643673" data-log="2643673" class="logs">Text here</li>
<div>
<button>Add Input</button>
</div>

关于javascript - 如何等待/检查元素是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51869404/

相关文章:

javascript - 为什么通过 Ajax 而不是通过常规 Http 请求发送文件对象数组是安全的?

javascript - HTML5 Canvas 层到 HTML/CSS 代码

jquery - 隐藏没有 rtl 方向的 p 标签

javascript - 在自定义 WordPress 主题中的页面更改时保持 Accordion 子菜单打开

javascript - 使用 javascript 命令后我的图像不可见?

javascript - 有没有关于如何处理nodejs中未捕获的异常的指南?

javascript - 在本地注册一个Vue组件有什么好处?

javascript - 将参数传递给函数 onclick jQuery

用于调查的 Javascript : Calculating Age from Birth date on Page Load From Prefilled Info

jquery - 使用 jQuery 如何通过选择菜单选项提示消息?