<div id='panelB'>
<?php include ("inc/items.php");?>
</div>
<script src='../jquery-2.1.1.min.js'></script>
<script src='index.js'></script>
在这种情况下一切正常。
但是后来,在index.js
里面我有:
$("#modals_01 .linkL").click(function(){
$("#panelB").load("inc/items.php", { "category": a});
});
现在,javascript click.functions对items.php
内的div不起作用。
我也尝试将<script>
标记放在items.php
内,但在这种情况下,点击功能(例如slideToggle
div)工作两次!?
答案 0 :(得分:3)
这是因为jQuery不知道items.php中加载的项目。您必须使用on()
委派事件,因此这些事件将冒出DOM树。
例如 -
$(document).on('click', 'element', function() {
现在,当点击元素时,点击事件会冒泡到文档的位置。事件冒泡的元素必须在jQuery代码最初运行时存在,因此jQuery“知道”该元素并且可以拦截该元素的冒泡事件。这使得文档成为一个相当安全的赌注,但如果你愿意,你可以缩小它。