Как обрабатывать события во вложенном iframe? - PullRequest
1 голос
/ 20 марта 2012

Что я действительно хочу сделать, так это записать событие keydown в iframe и сделать что-то еще. Я ищу в Интернете, но все материалы о iframe на странице, но я сталкиваюсь с iframe в iframe. Мой код ниже, и он хорошо работает, когда iframes не вложены. Кто-нибудь может дать мне несколько советов?

$("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 голосов
/ 12 апреля 2016

Код $("iframe").each() может получить вложенный iframe.Может быть, вы можете код, как это $($("iframe").contentWindow).find("iframe").each(...)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...