如何在jquery中刷新文档

时间:2011-03-28 17:43:05

标签: javascript jquery

例如,如果我写这段代码:

$(document).ready(function(){

    $("div#i").click(function(){
        alert("ok");
       });
    });  

并且加载时在页面中找不到带有i id的div元素,所以在用一些函数创建它之后;我点击它,什么都没发生,所以我怎么能刷新jquery中的就绪函数..

3 个答案:

答案 0 :(得分:5)

$(document).delegate('div#i','click',function(){});

使用Delegate

<强> Reference

<强> Delegate vs Live

<强> Demo

答案 1 :(得分:1)

使用.live()http://api.jquery.com/live/

答案 2 :(得分:1)

将(click)事件处理程序从(document).ready中取出,并将其放在您提到的创建ID的函数中。

function someFunction()
{
  //creates the id, then
    $("div#i").click(function(){
        alert("ok");
       });

}

编辑:

如果这只是许多潜在事件处理程序中的一个示例,那么将它们全部包装在一个函数中,比如bindEvents(),并且每次页面被ID创建“弄脏”时都可以调用它。

但是其他评论者使用.live()的方法可能会更少维护,如果这是你的担忧,它就是“JQuery方式”。