2011-06-15 110 views
1

我有一個網站鏈接頁面上的URL鏈接。每個鏈接都會將您帶到一個Frame頁面,該頁面是一個吸引給定URL的大型iFrame。我使用JavaScript來做到這一點,它適用於FF,Safari,Opera和Chrome,但不是IE。有誰知道我能做些什麼來讓它在IE中工作?IE瀏覽器黑客的JavaScript和iframe

我已經在WordPress中構建它。我有這樣的標籤和標籤之間的頭部分:

<script type="text/javascript" language="javascript"> 
     function loadIF() { 
     iFrameSrc=location.href.split('?'); 
     if (iFrameSrc[1] != null) { 
      document.getElementById('external').src=iFrameSrc[1]; 
      } 
     else { 
      document.getElementById('external').src='default_page.htm' 
      } 
     } 
    </script> 

然後我把這個header.php文件,以及:

<body onload="loadIF()" <?php body_class(); ?>> 

這裏是鏈接標記:

<a href="/frame1?http://www.website.com">Website</a> 

謝謝 - Chris

+1

更多信息將是有益的... – William 2011-06-16 02:21:38

回答

0

您好像在拆分?上的位置嗎?帽子意味着你正在嘗試獲取參數?

如果是這樣:

iFrameSrc = location.search; 
if(iFrameSrc) 
{ 
    ... // Code here 
} 
else 
{ 
    ... // Code here 
} 

,或者嘗試

if(iFrame && iFrame.length > 2) 
{ 
    ... // Code here 
} 
else 
{ 
    ... // Code here 
} 

編輯確定,所以看到你的編輯後,我想我最好補充一點:

在第一個代碼示例我給您將第一個... // Code here替換爲:

document.getElementById('external').src= iFrameSrc.substr(1); // This will remove the leading question mark. 

UPDATE

<html> 
    <head> 
     <title></title> 
     <script type="text/javascript"> 
     function iFrameIF() 
     { 
      iFrameSrc = location.search; 
      if (iFrameSrc) 
      { 
       alert(iFrameSrc.substr(1));//document.getElementById('external').src = iFrameSrc.substr(1); 
      } 
      else 
      { 
       alert(); //document.getElementById('external').src = 'http://about:blank' 
      } 
     } 
     </script> 
    </head> 
    <body onload="iFrameIF()"> 
     <iframe width="100%" height="1000" marginheight="1" marginwidth="1" align="top" allowtransparency="true" frameborder="0" name="external" id="external"></iframe> 
     <br /> 

    </body> 
</html> 

打字到即:file://path/to/file.html?test了我一個警告說「測試」

+0

感謝詹姆斯,我試了一下,現在的URL請勿在任何瀏覽器中加載。我是一個關於JavaScript的白癡......這是你的意思代碼: - 對不起 - 無法弄清楚如何使此代碼模式... – 2011-06-16 00:21:07

+0

我做了錯字改變'iFrame.substr(1);''iFrameSrc.substr(1);'。抱歉! – 2011-06-16 00:23:40

+0

謝謝詹姆斯...代碼再次在Chrome瀏覽器中正常工作,但不IE ... – 2011-06-16 00:32:40

相關問題