我有一个div:
<div id="left-nav">
<a href="#" class="current">
<span class="icon dashboard"></span>
Dashboard
</a>
<a href="#">
<span class="icon users"></span>
Users
</a>
<a href="#">
<span class="icon venues"></span>
Venues
</a>
<a href="#">
<span class="icon payments"></span>
Payments
</a>
</div>
我可以逐个为每个a
指定一个事件处理程序,但有没有一种方法我可以要求一次回拨所有这些事件?所以我只是说,当点击任何a
标签时触发此功能?而不是循环遍历每个并分配回叫。
由于
答案 0 :(得分:1)
在jQuery中,您可以使用.on()
:
$("#left-nav").on( "click", "a", function(){
alert("clicked!");
return false;
});
答案 1 :(得分:1)
<div id="left-nav">
<a href="#" class="current">
<span class="icon dashboard"></span>
Dashboard
</a>
<a href="#">
<span class="icon users"></span>
Users
</a>
<a href="#">
<span class="icon venues"></span>
Venues
</a>
<a href="#">
<span class="icon payments"></span>
Payments
</a>
</div>
添加jquery
$('#left-nav a').click(function()
{
//your element
alert(this.id);//for element which have been clicked
});
答案 2 :(得分:1)
$("#left-nav").on( "click", "a", function(){
alert("clicked!");
return false;
});
答案 3 :(得分:0)
您可以这样链接您的选择器:
$('#left-nav a').on('click', function(){
alert(this.className + ' clicked.');
});
如果您的所有锚标签都是动态生成的,那么您可以将事件委托给页面加载时可用的最近的静态父级:
$('#left-nav').on('click', 'a', function(){
alert(this.className + ' clicked.');
});
答案 4 :(得分:0)
$("#left-nav").delegate( "click", "a", function(){
//your code
});