Javascript 事件委派和jQuery加载()
我正在尝试将事件附加到导航栏中动态加载的导航项。单击加载的导航项目时,它将执行某些操作(警报“hello world”)。我很确定这里的答案与事件授权有关,但我已经尝试了很多方法,还没有完全弄清楚 要加载的myNav:Javascript 事件委派和jQuery加载(),javascript,jquery,Javascript,Jquery,我正在尝试将事件附加到导航栏中动态加载的导航项。单击加载的导航项目时,它将执行某些操作(警报“hello world”)。我很确定这里的答案与事件授权有关,但我已经尝试了很多方法,还没有完全弄清楚 要加载的myNav: <div id='myNav'> <ul> <li id='navItem1'>1</li> <li id='navItem2'>2</li&g
<div id='myNav'>
<ul>
<li id='navItem1'>1</li>
<li id='navItem2'>2</li>
<li id='navItem3'>3</li>
<li id='navItem4'>4</li>
</ul>
</div>
现在将一个事件附加到新加载的导航项(这是我做错的部分):
您必须使用()上的委派版本
,
,并委派给未动态插入的元素,在本例中为#navBar
$("#navBar").on("click", "#navItem1", function(){
alert("hello world!");
});
或者load()中提供的回调函数,用于在元素实际加载时附加事件处理程序
$("#navBar").load(loadURL, function() {
$('#navItem1').on("click", function(){
alert("hello world!");
});
}).slideDown("medium");
您必须使用()上的委派版本
,
,并委派给未动态插入的元素,在本例中为#navBar
$("#navBar").on("click", "#navItem1", function(){
alert("hello world!");
});
或者load()中提供的回调函数,用于在元素实际加载时附加事件处理程序
$("#navBar").load(loadURL, function() {
$('#navItem1').on("click", function(){
alert("hello world!");
});
}).slideDown("medium");
$("#navBar").load(loadURL, function() {
$('#navItem1').on("click", function(){
alert("hello world!");
});
}).slideDown("medium");