动态添加的jQuery事件(在<script>中)不执行</script>

时间:2015-01-03 15:35:27

标签: javascript jquery html dom iframe

我有一个页面(&#34;主页&#34;),里面有一个iFrame。我想单击一个按钮,然后将悬停事件添加到iFrame的DOM中的特定元素(.header-logo)(该页面位于同一个域中,我已经访问并更改了许多元素一个问题)。

因此,我将此附加到主页上的点击事件:

$('<script>').attr('type', 'text/javascript').text(
'$(".header-logo").bind("mouseenter", function(e) { alert("On Hover!"); }); alert("Hello World!");')
.appendTo($("#mainIframe").contents().find('head'));

&#34; Hello World!&#34;按预期提醒流行音乐。但是 - jQuery部分 - 不起作用。悬停时没有任何事情发生 - 控制台中没有错误...

在问这个之前我尝试了很多选项...我尝试了on(),我尝试了delegate() ...还添加了:e.preventDefault(); ......似乎没有任何效果。

我注意到的是在Chrome中 - 在调试模式下,我看到脚本添加得很好:

<script type="text/javascript">$(".header-logo").bind("mouseenter", function(e) { alert("On Hover!"); }); alert("Hello World!");</script>

但它仍然没有按预期工作......但是(戏剧性的声音效果) - 在更改脚本中的任何内容时(即使只是添加空格) - 弹出窗口再次显示(Hello World!) - 现在 - 当我悬停.header-logo时 - IT工作!弹出窗口显示(On Hover!)!

这里发生了什么?我该如何解决?

0 个答案:

没有答案