【问题标题】:JavaScript: Setting the style property on a div tag in IE7JavaScript:在 IE7 中设置 div 标签的样式属性
【发布时间】:2013-10-11 22:58:27
【问题描述】:

我正在尝试在 JavaScript 中动态创建 div 标记并将其放置在现有的 div 标记中。

此代码在 FF、Chrome、IE9 和 IE10 上运行良好。代码需要在IE7下运行。

在设置style属性时,IE7抛出如下错误:

未实施

代码如下:

<html>
   <head>
   </head>
   <body>
      <div id="content"> </div>
      <script> 
         var input = document.createElement('div');

         // Above code above executes fine.
         input.style = "display: block;";  // << This code triggers
                                           // the error mentioned above

         input.className = "container";
         input.innerHTML = 'Test';
         var container = document.getElementById('content');
         container.appendChild(input);
      </script>
   </body>
</html>

如果我在这里忽略了某些内容,或者在 IE7 中运行时是否需要更改此代码,请告诉我。谢谢!

【问题讨论】:

  • 为什么将 div 的样式设置为 display:block,而这是默认设置?为什么在将类添加到 div 时设置内联样式 - 为什么不在类中包含所有需要的样式?无论如何,关于错误,您是否尝试过先将 div 附加到容器,然后设置样式?还是input.style.display = "block";
  • @nnnnnn 代码会根据需要进一步更改内联样式。这已经被编码,我正在尝试使其与 IE7 兼容。尝试将div 附加到容器,然后设置样式。结果相同。 input.style.display = "block"; 也会报错Could not get the display property. Invalid argument

标签: javascript html dynamic internet-explorer-7 dynamic-data


【解决方案1】:

改用这个:

input.style.display = "block";

虽然我想知道您为什么要尝试这样做,因为 block 已经是 &lt;div&gt; 元素的默认显示样式。

【讨论】:

  • 当我尝试input.style.display = "block;"; 时出现错误:Could not get the display property. Invalid argument.
  • @slayernoah - 您的文档中必须有其他内容,因为这种处理样式属性的形式在 IE 7 中可以正常工作。
  • 它确实有效。谢谢!!我正在尝试input.style.display = "block;"; 而不是input.style.display = "block";。这是漫长的一天!谢谢!
猜你喜欢
  • 1970-01-01
  • 2016-04-13
  • 2010-09-25
  • 1970-01-01
  • 2014-07-06
  • 2019-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多