setAttribute不起作用,即任何解决方法?

时间:2012-03-02 07:54:26

标签: javascript html

这是我的代码。它在firefox上工作正常

<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>

2 个答案:

答案 0 :(得分:1)

对于旧版本的IE(6/7),使用可以使用属性而不是属性:

div.id = 'errorMessage';
div.className = 'blockMessage';
closeText.onclick = destroyObject;

答案 1 :(得分:1)

作为解决方法,如果是IE,可以添加更多代码,例如:


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

有关详情,请参阅here