【发布时间】:2010-09-09 23:59:01
【问题描述】:
我遇到了这个脚本的问题,我一生都无法弄清楚它有什么问题。快速浏览一下我所拥有的:
HTML:
<ul>
<li id="wildcard_1">
<div>
<a href="#">test</a>
</div>
</li>
</ul>
<a href="#" class="reset">reset</a>
jQuery:
// Main function
$("[id^=wildcard_]").children('div').children('a').click(function() {
$(this).replaceWith($(this).text());
});
// Temporary reset function
$("a.reset").click(function() {
$("[id^=wildcard_]").children('div').wrapInner('<a href="#"></a>');
});
“测试”链接在第一次被点击时会正常工作——它正在被转换为纯文本)。为了不在这里粘贴大部分脚本,我创建了一个临时函数,它将包装div 的内容,将“测试”纯文本转换回链接。这就是问题所在——第一个函数的.click() 监听器将不再在这个动态创建的链接上触发,FireBug 也不会抛出任何错误或警告。
你也可以在 JSfiddle 上看到这个直播:http://jsfiddle.net/rWz69/
对此的任何帮助将不胜感激!
【问题讨论】:
标签: jquery dynamic triggers hyperlink