将事件绑定到动态创建的iframe元素

时间:2014-08-21 14:19:17

标签: jquery dom iframe

我想将事件侦听器绑定到DOM中尚不存在的元素。现在这将是jQuery.on()的一个案例。

但在这种情况下,我必须将事件绑定到iFrame中的元素。这可以通过

来管理
$("#iFrame").contents().find(".my_element").bind(...

等等。但我遇到的情况是,元素尚未出现在iFrame-Document中(由用户交互添加),因此.find()将返回一个空数组,并且该事件不会被绑定。

甚至可以将事件侦听器绑定到稍后创建的特定于iFrame的元素吗?我只找到现有元素的解决方案,运动内容()和find()。

提前致谢!

2 个答案:

答案 0 :(得分:0)

试试这个

$("#iframe").load(function(){
    $("#iFrame").contents().find(".my_element").bind('click',function(){
       // Your code here
    });
});

希望这会有所帮助..干杯......

答案 1 :(得分:0)

我找到了一个效果很好的解决方案。如果这不起作用,只需通过alert( $("#iframe").length );检查iframe是否存在。值必须高于0。

$("#iframe").contents().find('body').on("click", ".my_element", function (e)
{
    alert("Give it to me dude ;)");
});