2016-01-18 8 views
0

Я играю видеоизображение с YouTube в моем диалоговом окне jquery ui, в котором есть iframe. В событии dialogClose я очищаю iframe src, но он перенаправляет/возвращает страницу на этот URL. Вот мой код:Android WebView: настройка iframe src перенаправляет страницу

HTML:

<div id="videoDialog" title="Video Player"> 
    <iframe id="videoPlayer" src="" width="100%" height="500" style="border: 0px;" sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe> 
</div> 

JS:

var $videoDialog = $("#videoDialog").dialog({ 
     autoOpen: false,      
     width: 900, 
     height: "auto", 
     modal: true 
    }), 
    $iframeVideoPlayer = $("#videoPlayer");   


$(".video").on("click", function(){ 
    $iframeVideoPlayer.prop("src", $(this).data("src")); 
    $videoDialog.dialog("open"); 
    }); 

    $videoDialog.on("dialogclose", function(event) {   
    $iframeVideoPlayer.prop("src", "");//i set empty src here to iframe and it redirects the page  
    }); 

Пожалуйста, помогите.

Его единственное, что происходит внутри веб-сайта андроида. В настольных браузерах он работает нормально

ответ

0

Я просто убрал диалог с DOM в диалоговом тесном событие и вставить диалог в DOM на лету, чтобы остановить перенаправлять страницу по настройке IFrame SRC:

вот мой код:

var $videoDialog = $("#videoDialog").dialog({ 
     autoOpen: false,      
     width: 900, 
     height: "auto", 
     modal: true, 
     close: function() { 
      $videoDialog.remove(); 
     } 
    }), 
    $iframeVideoPlayer = $("#videoPlayer");  

    $(".video").on("click", function(){ 

     var videoSrc = $(this).data("src"); 

     $videoDialog = $("#videoDialog"); 

     if($videoDialog.length == 0){ 

      //here appending dialog in body and .dialog it 
      $("body").append("<div id='videoDialog' title='Video Player'><iframe id='videoPlayer' src='"+videoSrc+"' width='100%' height='500' style='border: 0px;'></iframe></div>"); 

      $videoDialog = $("#videoDialog").dialog({ 
       autoOpen: false,      
       width: 900, 
       height: "auto", 
       modal: true, 
       close: function() {    
       $videoDialog.remove(); 
       } 
     }); 

     $iframeVideoPlayer = $("#videoPlayer"); 
    } 

    $iframeVideoPlayer.prop("src", videoSrc);  
    $videoDialog.dialog("open"); 
}); 
0

Вы пытались использовать событие beforeClose?

Смежные вопросы