javascript - IE8警告: CSS styling with JavaScript for -moz-linear-gradient

标签 javascript css internet-explorer-8

我正在使用 JavaScript 来设置控制元素的样式。

controlText.style.background = "-moz-linear-gradient(center top , #6D8ACC, #7B98D9)";
controlText.style.background = "-webkit-gradient(linear, 0% 0%, 0% 100%, from(#6D8ACC), to(#7B98D9))";

现在,除了在 IE8 中,这一切正常,我在 IE8 中收到 Invalid argument 警告。

有人可以告诉我如何修改代码以使其在 IE 上运行而不出现警告/错误吗?

问候
尼基尔·古普塔

解决方案:谢谢您的输入,我用 jQuery.browser.msie 解决了这个问题,如下所示:

if (jQuery.browser.msie) {
  controlText.style.background = "#7B98D9";
} else {
  controlText.style.background = "-moz-linear-gradient(center top , #6D8ACC, #7B98D9)";
  controlText.style.background = "-webkit-gradient(linear, 0% 0%, 0% 100%, from(#6D8ACC), to(#7B98D9))";
}

最佳答案

您应该只在检查它是否是 Internet Explorer 之前设置这些内容。

IE 不支持渐变,因此会发出警告。

编辑:

function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
  var rv = -1; // Return value assumes failure.
  if (navigator.appName == 'Microsoft Internet Explorer')
  {
    var ua = navigator.userAgent;
    var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
    if (re.exec(ua) != null)
      rv = parseFloat( RegExp.$1 );
  }
  return rv;
}

来源:http://msdn.microsoft.com/en-us/library/ms537509(v=vs.85).aspx

关于javascript - IE8警告: CSS styling with JavaScript for -moz-linear-gradient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5284756/

相关文章:

javascript - 检测两个圆圈之间的碰撞并将它们相互滑动

javascript - 如何将摘要标签固定到与其关联的扩展详细信息标签的底部?

javascript - CSS:jQuery:将 margin-right 应用于 li 元素,除了每个第 4 个子元素(仅适用于 display:block 的元素)

javascript - 为什么我不能用IE8点击这个?

javascript - MSIE 让我的 Slidejs 代码看起来很糟糕

javascript - 当检测到某个最小屏幕分辨率大小时,如何通过 Javascript 更改 CSS 属性

javascript - Sencha touch 2 中的网格

javascript - IE8 将 function() 分配给属性名称时出错 'function'

javascript - 媒体查询的 IE 问题

css - 使用 css 模块如何定义全局类