2017-07-15 72 views
7

我一直未能找到有效的答案。我有一個iframe(是的,我必須在這種情況下使用iframe),它可以在PC上正常工作,但不會在手機或平板電腦上加載。未在手機或平板電腦上加載iFrames

頁面上有一些Javascript,但刪除它並不能解決問題。我也嘗試將iframe的高度和寬度從百分比更改爲固定值。我也嘗試從iframe中刪除除src以外的所有屬性,並且它仍然不加載iframe中的任何內容。

下面是我的頁面的簡化版本,使用了我從其他建議中可以找到的內容。

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="UTF-8"> 
    <meta content='width=device-width, initial-scale=1.0' name='viewport'> 
    <style type="text/css"> 
       body, html 
       { 
        margin: 0; padding: 0; height: 100%; overflow: hidden; -webkit-backface-visibility: visible; 
       } 

       #content 
       { 
        position:absolute; left: 0; right: 0; bottom: 0; top: 0px; 
       } 
      </style> 
    </head> 
    <body> 

    <script type="text/javascript"> 
    function onFrameLoad() { 
      do stuff 
    }; 
    </script> 

    <div id="content"> 
    <iframe onload="onFrameLoad(this)" id="app" src="https://subdomain.mydomain.com" frameborder="0" height="100%" width="100%"></iframe> 
    </div> 
    </body> 
    </html> 

誰能告訴我爲什麼它不適用於手機?謝謝

更新:清除平板電腦上的瀏覽器緩存修復它,但在移動設備上做同樣的事情沒有做任何事情。我也嘗試使用我的朋友的iPhone(他們從來沒有訪問過該網站),並沒有加載。

我想在上演示等網站上我的手機W3Schools的I幀的iframe作品展示,所以它不是一個x-frame options或瀏覽器不允許任何Iframe的問題(雖然X框選項會停止工作的所有網址設備,但我檢查一切我能想到的)

我可以根據需要通過郵件提供一個活生生的例子URL。

+1

我想我想通了......子站點的URL正在通過CNAME記錄第三方託管,他們已經暫時「破」他們的SSL證書,而遷移到新版本。我認爲android和iphone瀏覽器的工作方式與Firefox相同,如果安全站點試圖顯示混合內容,它就不會顯示。如果我使用的瀏覽器之前沒有使用過,那麼頁面不會顯示,但如果我使用了一個我已經使用過的瀏覽器(即使在清除緩存後),它會顯示出來。顯然,他們應該在本週完成它,希望能夠修復它。 – Lyall

+0

雖然在我的平板電腦上清除緩存後,它仍然顯示工作的https版本,一切正常...嗯。混亂。 – Lyall

+0

您是否遵守跨源資源共享(CORS)政策? iframe內容需要在響應中正確設置「Allow-Access-Control-Origin」頭部,否則現代Web瀏覽器將阻止響應以保護用戶。 –

回答

0

問題出在我懷疑 - 如果內容混合在安全和非安全之間,iframe的網址會調用某些不安全的元素,並且移動設備和平板電腦上的某些瀏覽器(以及桌面上的Firefox)不會顯示任何內容(我的域名都是https)。

現在這些是固定的,一切都託管/安全地叫,徹底清除緩存和重新加載頁面修復即使在移動瀏覽器的問題。

,它正在對平板電腦和不可移動的原因純粹是到計時,當不同的元素HTTPS鏈接被打破(重定向而不是HTTP)和在不同的頁面進行緩存。

0

我面臨類似的iframe問題,並通過iOS的WebView跨域訪問。問題在於導致問題的Cookie驗收。

問題是Cookie的安全策略(HTTPCookieAcceptPolicy)爲UIWebView的,而此前默認爲NSHTTPCookieAcceptPolicyAlways。

但是從iOS的7,它得到了默認爲NSHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain,打破我的應用程序。

你問題看起來不一樣,但可能是在類似的線路上。

相關問題