无法让.on函数按预期工作

时间:2013-05-25 20:22:17

标签: jquery html jquery-on jquery-delegate

我有一个带有以下html的html页面:

<div id="content">
    <div class="pagination">
        <a href=''>blah</a>
    </div>
</div>

转到具有以下js的页面不会返回任何警报:

$("#content").on(".pagination a", "click", function(event){
    alert("alert message")
})

使用此js转到同一页面可以正常工作:

$("#content .pagination a".on("click", function() {
    alert("alert message")
})

为什么呢?在.on() API中,第一个应该将委托的功能绑定到内容id,第二个应该将它绑定到内容id中的a标签,但第一个不会发生。

我使用on()函数委派点击事件的方式有什么问题?

2 个答案:

答案 0 :(得分:2)

$("#content").on("click",".pagination a", function(event){
    alert("asdasdasd")
})

切换到上面的定义

答案 1 :(得分:2)

.on().delegate()

不同

.on()的正确语法是 -

on( events [, selector ] [, data ], handler(eventObject) )

你需要这个:

$("#content").on("click",".pagination a", function(event){
    alert("asdasdasd")
})