2012-03-02 70 views
0

這是我code.Its在FirefoxsetAttribute不適用於任何解決方法?

<script language="JavaScript"type="text/javascript"> 
window.onload=function createDiv() 
    { 
    var body = document.getElementsByTagName('body') [0]; 
    var div = document.createElement('div'); 
    div.setAttribute('id','errorMessage'); 
    div.setAttribute('class','blockMessage'); 
    var text = document.createTextNode('TO close the message click on cancel'); 
    var closeText=document.createElement('span'); 
    closeText.setAttribute('id','close'); 
    closeText.setAttribute('onclick','destroyObject()'); 
    var text1=document.createTextNode('Close'); 
    closeText.appendChild(text1); 
    div.appendChild(text); 
    div.appendChild(closeText); 

document.body.insertBefore(div, document.body.firstChild); 

//body.appendChild(div); 
    } 
function destroyObject(){ 
    var getId=document.getElementById('errorMessage'); 
    getId.remove(getId); 
} 

    </script> 
+0

,你可以先看看你的控制檯,然後撕掉你的代碼,直到你找到卡住的地方。 – Joseph 2012-03-02 07:56:06

+1

這可能有助於解決方法:http://webbugtrack.blogspot.com/2007/08/bug-242-setattribute-doesnt-always-work.html – 2012-03-02 07:58:02

+0

@Sudhir你應該把這個答案... – Boldewyn 2012-03-02 08:02:49

回答

1

至於解決方法,你可以添加一些更多的代碼,如果它的IE瀏覽器,如:

 

//for class 
div.className = "your_class_name"; 
//for onclick 
div.onclick = function() {destroyObject();}; // for IE 
 

here更多

1

工作的罰款對於舊版本的IE(6/7)使用可以使用屬性,而不是屬性:

div.id = 'errorMessage'; 
div.className = 'blockMessage'; 
closeText.onclick = destroyObject; 
相關問題