【问题标题】:Trouble with IE 7/8 Proprietary Filter and jQueryIE 7/8 专有过滤器和 jQuery 的问题
【发布时间】:2011-10-30 16:26:08
【问题描述】:

在 IE (7/8) 中使用专有的 filter css。

尝试对 DOM 节点应用额外的过滤器 (IE 7/8),并确保如果其中任何一个已经定义了过滤器,则添加新过滤器而不是替换它。

所以,我有这样的代码(jQuery):

$('.fxobject').each( 
 function() {
  this.style.filter += 'alpha(opacity=50)';
 }
);

我的结果是新过滤器(在本例中为不透明度)会覆盖任何节点上已有过滤器的旧过滤器。

所以,我尝试以各种方式读取过滤器的值(jquery 的 css() 和 this.style.filter 方式),但什么也得不到(虽然它知道它有一个过滤器,它似乎无法读取字符串值本身 - 这就是我想 += 不起作用的原因)。

所以我猜测这个 IE 过滤器实现可能是某种对象(我看到一些关于 node.filters 的文档),但似乎无法弄清楚如何读取值并添加额外的过滤器。

有人有解决办法吗?

【问题讨论】:

    标签: jquery css internet-explorer filter


    【解决方案1】:

    你可以试试这个

    $('.fxobject').each( 
      function() {
         var filter = $(this).css("filter") || '';
         $(this).css("filter", filter + 'alpha(opacity=50)');
      }
    );
    

    【讨论】:

    • 你能把你的用例摆弄一下吗?
    • 实际上,它确实有效!我打错了 var 过滤器行(你改变了它,我一开始没有注意到)。好的!谢谢-
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-25
    • 1970-01-01
    • 1970-01-01
    • 2012-08-31
    • 2013-02-11
    相关资源
    最近更新 更多