如何处理嵌套iframe中的事件?

时间:2012-03-20 10:10:12

标签: javascript events iframe

我真正想做的是捕获iframe中的keydown事件并执行其他操作。我在互联网上搜索,但所有材料都是关于页面中的iframe,但我面临的是iframe中的iframe。我的代码在下面,当iframe没有嵌套时它运行良好。谁能给我一些建议?

$("iframe").each( function(i) {             
        var currentIframe=this;                     
        $(this).load(function(event) {
            var iFrameDoc =currentIframe.contentDocument || currentIframe.contentWindow.document;                       

            $(iFrameDoc).find("input").each( function(i) {

                $(this).keydown(function(event) {                                   
                  event.stopPropagation();      
                });                     
            });

            $(iFrameDoc).keydown(function(event) {                  
                var code = (event.keyCode ? event.keyCode : event.which);   
                var e = jQuery.Event("keydown");                
                e.which = code; // # Some key code value    
                $input.trigger(e);  
            }); 

            $(iFrameDoc).mousemove(function(event) {    
                        currentMousePos.x=currentIframe.offsetLeft+event.pageX; 
                        currentMousePos.y=currentIframe.offsetTop+event.pageY;  
            });                         

        });                 
});

1 个答案:

答案 0 :(得分:0)

代码$("iframe").each()可以获取嵌套的iframe。也许你可以这样编码$($("iframe").contentWindow).find("iframe").each(...)