Javascript JQuery:如何在一些动态加载的内容上扩展脚本?
我有一个小问题,我希望你们中的一些人能帮我解决 单击一个按钮,我想用另一个页面的内容更新一个div 假设homepage.html是这样的:Javascript JQuery:如何在一些动态加载的内容上扩展脚本?,javascript,jquery,load,Javascript,Jquery,Load,我有一个小问题,我希望你们中的一些人能帮我解决 单击一个按钮,我想用另一个页面的内容更新一个div 假设homepage.html是这样的: <html> <head> <script type="text/javascript" src="JQUERY.JS"></script> <script type="text/javascript"> $(function() { $(".alert").clic
<html>
<head>
<script type="text/javascript" src="JQUERY.JS"></script>
<script type="text/javascript">
$(function()
{
$(".alert").click(function()
{
alert("HELLO");
return false;
});
$(".load").click(function()
{
$("#content").load("FILE.HTML");
return false;
});
});
</script>
</head>
<body>
<a href="#" class="load">CLICK ME</a>
<div id="content"></div>
</body>
</html>
$(函数()
{
$(“.alert”)。单击(函数()
{
警惕(“你好”);
返回false;
});
$(“.load”)。单击(函数()
{
$(“#content”).load(“FILE.HTML”);
返回false;
});
});
一个相当简单的文件
现在让我们假设FILE.HTML只有这一行:
<a href="#" class="alert">CLICK ME</a>
现在我要寻找的是:当我单击.alert时,会弹出警报框。我不知道为什么没有
所以我的问题是:为什么我加载的代码不受脚本的影响
感谢您的帮助。您需要使用来实现这一目标。您必须使用:
无需等待添加动态内容,此函数会将事件处理程序应用于与选择器匹配的所有未来元素。将单击事件附加到
“.alert”
项时,文件.html
中的内容不存在(实际上,当代码运行时,没有.alert
项!)
您需要使用jQuery或使用事件冒泡的方法,以便不仅从现有元素捕获事件,而且从稍后插入DOM的新元素捕获事件
这还有一个很好的副作用,即每个.alert
元素只使用一个事件处理程序,而不是一个
$(".alert").live('click', function()
{
alert("HELLO");
return false;
});