2016-09-16 41 views
-2

我有強迫CSS類時,寬度爲768下下面的JavaScript代碼片段:如何在iframe中強制調整大小?

<script> 
$(document).ready(function() { 
    var resizing = false; 
    function doResize() { 
     var w=$(window).innerWidth(); 
     console.log(w); 
     if (w < 1320 && w > 768) { 
      $('input[name="start"]').val("Retry"); 
      $('input[name="stop"]').val("Stop"); 
     } else { 
      $('input[name="start"]').val("Retry command"); 
      $('input[name="stop"]').val("Stop command"); 
     } 
     if (w < 768) { 
      $('.div').addClass('mobile'); 
     } else { 
      $('.div').removeClass('mobile') }); 
     } 
    } 

    $(window).resize(function(e) { 
     if (resizing!==false) { 
      clearTimeout(resizing); 
     } 
     resizing=setTimeout(doResize, 200); 
    }); 
    }) 
    </script> 

這工作得很好,當我打開移動設備上的頁面。

然而,當我添加同一頁面的iframe中它停止工作,並假定寬度大於768

編輯移動應用:似乎有需要爲條件,調整大小事件工作。如果我在瀏覽器中加載頁面的iframe並調整它的大小,一切正常。如果我加載寬度爲< 768,它只會在更改窗口寬度後添加css類。

什麼可能是錯的,我該如何解決這個問題?

+1

正在從iframe的外部施加的JavaScript?如果是這樣,它將無法工作。 –

+0

腳本在iFrame內呈現時是否加載頁面? – Renan

+0

這個問題不是很詳細,nd是混淆你問的。此外,您所提供的只是一小段代碼,而不是[mcve] – charlietfl

回答

0

我認爲,所有你需要的是處理程序建立後,觸發調整的權利,或致電doresize()

$(window).resize(function(e) { 
     if (resizing!==false) { 
      clearTimeout(resizing); 
     } 
     resizing=setTimeout(doResize, 200); 
}).resize();// trigger it on page load now 
+0

charlietfl謝謝,做到了! :) – NTor