.on函数没有被触发

时间:2012-05-30 15:47:38

标签: jquery

我在点击某些文字时尝试使用.on事件。这是我的小提琴:

http://jsfiddle.net/adrianjsfiddlenetuser/zyUkd/73/

但点击“链接”时没有被解雇,我不知道为什么?从阅读http://api.jquery.com/on/我不认为我应该传递的数据是.connected?

这需要适用于动态添加的元素。 以下是小提琴的代码:

<div id="myID">
    <a class="connected" >link</a>
</div>

​$(function() {

$(".connected").on('click', '.connected', function() {
    alert('fired)'
        $(".connected").append("<a>hello</a>");
});



});

​.connected {
    float: left;
    margin: 6px;
}

3 个答案:

答案 0 :(得分:2)

摆脱第二个.connected。你的闹钟也写错了。

$(function(){
        $(".connected").on('click', function() {
            alert('fired');
            $(".connected").append("<a>hello</a>");
        });
    });

答案 1 :(得分:2)

你可以使用这个:

$(".connected").on('click', function() {
    alert('fired')
    $(".connected").append("<a>hello</a>");
});​

或者这个:

$("#myID").on('click', '.connected', function() {
    alert('fired')
    $(".connected").append("<a>hello</a>");
});​

注意,第二个变体适用于动态添加的元素。

DEMO: http://jsfiddle.net/zyUkd/74/

答案 2 :(得分:0)

将其置于就绪函数中,并修复警告语法错误。

http://jsfiddle.net/zyUkd/75/

    $(document).ready(function() {

        $(".connected").on('click', function() {
            alert('fired');
                $(".connected").append("<a>hello</a>");
        });    

 });