向注入的元素添加函数

时间:2011-10-03 09:25:58

标签: javascript jquery

好的,我怎样才能为注入的元素添加函数(该元素在第一次浏览器加载时存在)。请仔细阅读我的例子,希望你能理解。

例如: 我去www.website.com,当它加载它加载“functions.js”和“other.js”时,在“functions.js”里面有一个代码,当用户点击按钮时会注入带有ID的新div。

注入代码如下所示:(functions.js --jquery)

$('a#button').click(function(){
    $('a#button').after('<div id="new">New div<br><a href="#" id="newdivlink">Another link</a></div>');
});

然而,在另一个js文件中加载了另一个点击函数,它是“other.js”(与function.js加载同时加载)。

在“other.js”里面有单击新div的链接(#newdivlink)时onclick函数的代码。

other.js:

$('a#newdivlink').click(function(){
  alert('you clicked on new div's link yay?');
});

但问题是,新div的链接(#newdivlink)的onclick函数无法执行,因为脚本无法找到div(因为它在加载后被注入)。 还是有问题吗?

P / S如果你问为什么不结合两个脚本,我不想要,因为我想尝试这种技术。

3 个答案:

答案 0 :(得分:0)

live()用于jQuery版本&lt; 1.7或on()版本&gt; = 1.7

答案 1 :(得分:0)

尝试使用“直播”而不是点击:

$('a#newdivlink').live('click', function(){

答案 2 :(得分:0)

您可能需要的是jQuery.live

$('a#newdivlink').live("click", function(){
    alert('you clicked on new div's link yay?');
});