Javascript样式分配仅适用于Opera(但不适用于Firefox或IE8)

Javascript样式分配仅适用于Opera(但不适用于Firefox或IE8),javascript,html,Javascript,Html,下面的javascript代码在Opera(v10.5x)中工作得很好,但在Firefox(v3.6)和IE8中却失败得很惨。 function HighlightBox(elementid,highlight) { var hstyle="none"; if (highlight) { switch (elementid) { case 'emailbox':

下面的javascript代码在Opera(v10.5x)中工作得很好,但在Firefox(v3.6)和IE8中却失败得很惨。


function HighlightBox(elementid,highlight)
{
      var hstyle="none";

      if (highlight)
        {        
        switch (elementid) 
        {
              case 'emailbox':
              case 'lastnamebox':
              case 'firstnamebox':
              case 'campusbox':                         
                hstyle="width:275px;height:70px;border:2px solid red;";                                                         
                break;
              case 'isdbox':
                hstyle="width:275px;height:100px;border:2px solid red;";
                break;
        }
        }

    document.getElementById(elementid).style = hstyle;  
}
我尝试过个人作业,如:


document.getElementById(elementid).style.width="275px";
...
但这些似乎也不起作用。


function HighlightBox(elementid,highlight)
{
      var hstyle="none";

      if (highlight)
        {        
        switch (elementid) 
        {
              case 'emailbox':
              case 'lastnamebox':
              case 'firstnamebox':
              case 'campusbox':                         
                hstyle="width:275px;height:70px;border:2px solid red;";                                                         
                break;
              case 'isdbox':
                hstyle="width:275px;height:100px;border:2px solid red;";
                break;
        }
        }

    document.getElementById(elementid).style = hstyle;  
}
我感谢在这件事上的任何帮助。 非常感谢。
Ai Pragma

为此,您可以尝试使用
cssText
属性,即:


检查上述示例。

浏览器中是否有任何错误消息?另外,请确保在页面加载期间调用该功能。您必须在window.onload事件中调用该函数。否则您将得到“document.getElementById(elementid)”为null的errorWell CMS,您建议在所有浏览器中使用.cssText都很有效。我正在使用Aptana(v2.0.4)IDE作为我的javascript和HTML编辑器,我尝试了Aptana的“.style.”的“自动完成”下拉列表中的几个组合,在阅读了您的建议后,我回到Aptana查看我是否错过了该组合,而Aptana在其下拉列表中没有列出“cssText”。我对此感到非常惊讶。无论如何,再次感谢你的建议,效果很好。艾岛Pragma@AiPragma:属性是(是
CSSRule
接口的成员)的一部分,奇怪的是Aptana没有列出此属性。。。无论如何,欢迎来到SO,我很高兴能提供帮助,请记住,您可以将问题的最佳答案标记为,查看:-)