如何为动态html附加事件回调

时间:2011-03-18 18:13:29

标签: jquery

您好 我有一个jQuery onload函数,它基于它的类名在鼠标上附加一些内联链接的函数调用,我也会使用ajax动态加载一些html内容,但是基于classname的上述函数调用附件不适用于动态HTML,如何解决这个问题..

我的代码将如下所示(实际上在我的代码中我加载图片而不是简单的链接)


$(function(){   
    $(".highlight").mouseover(function(){
        $(this).css("background-color", "rgb(255,255,0)");
    });

    $(".highlight").mouseout(function(){
        $(this).css("background-color", "rgb(255,255,255)");
    });


});

$(function(){
        //ajax call
        // set the ajax return value inside dynamic div
    $(".dynamic").html(""+new Date()+"");
});

<body>
    <div>
        <a href="#" class="highlight">link1</a>
        <a href="#" class="highlight">link2</a>
        <a href="#" class="highlight">link3</a>
    </div>
    <div class="dynamic"></div>
</body<

由于 venkat papana

3 个答案:

答案 0 :(得分:2)

jQuery live()功能可能满足您的需求。

http://api.jquery.com/live/

答案 1 :(得分:0)

您需要使用http://api.jquery.com/live/绑定您的活动,这些活动适用于任何未来元素以及当前元素。

答案 2 :(得分:0)

您需要.live() method

$('.dynamic a').live('mouseover', function(){
   $(this).css({border: '1px solid red'});
});

这会在你追加它之后在每个<a>上添加鼠标悬停