如何在没有任何事件的情况下在jQuery中选择新加载的元素

时间:2018-03-07 20:24:09

标签: javascript jquery load selector

我正在开发一个jQuery项目,通过选择不同的选项load()方法来加载页面的一部分。 我的应用程序中有这一行:

$('.pe').myFunction();

此代码必须在没有任何事件的情况下执行。所以我不能使用这样的代码:
$(document).on('click','.pe',function(){...});

它适用于所有带pe类的预加载元素。但它不适用于具有相同类的新加载内容。
你能帮帮我吗?

2 个答案:

答案 0 :(得分:0)

可以说是正确的方法是使用$(document).on('.pe','click',function(){...});;但是,在我发现之前,我确实编了很多。所以,我知道有几个工作要做。我使用课程来标记项目已完成'添加点击事件后。

如果您有任何问题,请联系他们。要知道何时添加新的html,您只需调用一个函数,而不是使用间隔。

关于这个问题的注意事项:你没有说过没有事件,也没有使用任何事件。



//Simulating ajax loading
setInterval(function () {
  $(document.body).append('<button class="clickable">So clickable!</button><br />');
},1000);

//Your code
setInterval(function () {
  $(".clickable:not(.completed)").click(function () {
    console.log('works!');
  }).addClass("completed");
},10);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
  <button class="clickable">So clickable!</button>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

最后我找到了答案。我只是在加载的页面中放入相同的代码。

// New page which will be loaded with its all contents ...
<script>$('.pe').myFunction();</script>