我发现了一些脚本,允许您使用JQuery执行弹出窗口,但在通过JQuery创建链接时也没有。
这些可能是你见过的简单的$(selector).click(function() { ... });
处理程序。那些对新创建的元素不起作用的原因是,它们只在扫描DOM时查找与该选择器匹配的元素,这很可能是在文档准备好的情况下运行的。 ($(document).ready(function(){ /* right here */});
)
您有两个选项可用于将事件处理程序附加到正在创建的链接。
- 连接时连接是通过使用jQuery的delegate(1.4.3 +)或on(V1.7 +)创建
- 使用事件委托的事件处理函数
选项1(创建后附接):
$('#wordcloud').find('a').click(function(event) {
event.preventDefault(); //to prevent the default click action
//do your popup magic right here
});
0123:
加入所有元素之后
选项2:代表团
任何地方,在文件准备:
使用.delegate:
$('#wordcloud').delegate('a', 'click', function(event) {
event.preventDefault(); //to prevent the default click action
//do your popup magic right here
});
使用.on:
$('#wordcloud').on('click', 'a', function(event) {
event.preventDefault(); //to prevent the default click action
//do your popup magic right here
});