我正在开发一个jQuery项目,通过选择不同的选项load()
方法来加载页面的一部分。
我的应用程序中有这一行:
$('.pe').myFunction();
此代码必须在没有任何事件的情况下执行。所以我不能使用这样的代码:
$(document).on('click','.pe',function(){...});
它适用于所有带pe
类的预加载元素。但它不适用于具有相同类的新加载内容。
你能帮帮我吗?
答案 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;
答案 1 :(得分:0)
最后我找到了答案。我只是在加载的页面中放入相同的代码。
// New page which will be loaded with its all contents ...
<script>$('.pe').myFunction();</script>