2011-05-30 295 views
-2

以下JavaScript在較早版本的Safari(Safari 3)中正常工作,但不在最新版本的Safari上。JavaScript適用於Safari 3,但不適用於較新版本

你能幫我找到問題嗎?

function loadframe(){ 
    var iframeEl = document.getElementById("ifrm"); 
    if(!iframeEl) 
    { 
    window.alert('hellooooooo'); 
    var el = document.createElement("div"); 
    el.innerHTML = '<iframe id="ifrm" width="0" height="0" src=\'<!--EP CLASS="com.epiphany.presentation.ServerURLWriter" ACTION="campaign_segment_load" TEMPLATE="campaign\\campaign_segments" -->\' onload="dw_display(\'ifrm\',\'segmentspn\')" ></iframe>'; 
    document.body.appendChild(el); 
    return true; 
    } 
    return false; 
} 
+3

我想你將不得不提供一些關於奇怪標記應該做什麼的解釋。一般來說,只要問爲什麼某些事情「不起作用」,而沒有說出**發生了什麼事情,而發生**應該發生的事情,則不太可能得到很多答案。 – Pointy 2011-05-27 12:03:15

+0

而不是if(!iframE1)if(iframE1!= null && iframE1!= undefined)更好。請給出關於腳本和問題的更多解釋。 – ehsun7b 2011-05-27 12:16:20

+0

而不是最新版本,最好提一下確切的版本號。 – ehsun7b 2011-05-27 12:18:57

回答

0
function loadframe() 
    { 
     var iframeEl = document.getElementById("ifrm"); 
     if(!iframeEl) 
     { 
     var el = document.createElement('div'); 
     var e2 = document.createElement('iframe'); 
     e2.src ="http://google.com"; 
     e2.setAttribute('id',ifrm); 
     e2.width= 80;  
     e2.height= 80;    
     document.body.appendChild(el); 
     el.appendChild(e2); 
     return true; 
     } 
     return false; 
    } 

這將工作在所有的瀏覽器,如iframe是另一個因素,我們應該使用DOM的方法添加它。

相關問題