Javascript raphael画布图像在IE8中未正确显示

Javascript raphael画布图像在IE8中未正确显示,javascript,html,css,internet-explorer-8,raphael,Javascript,Html,Css,Internet Explorer 8,Raphael,我使用raphael的转速表库: 在firefox和google chrome中,它可以正确显示背景图像。它不能在IE8中正确显示(如下所示) 下面是它在FF和谷歌chrome中的外观 #speedometer { background: transparent url('/assets/images/speedometer.png') no-repeat; width: 381px; height: 380px; position: absolute;

我使用raphael的转速表库:

在firefox和google chrome中,它可以正确显示背景图像。它不能在IE8中正确显示(如下所示)

下面是它在FF和谷歌chrome中的外观

#speedometer {
    background: transparent url('/assets/images/speedometer.png') no-repeat;
    width: 381px;
    height: 380px;
    position: absolute;
    top: -30px;
    right: -20px;
}

调用转速表实例:

var t = Raphael('speedometer').tachometer(50, 
    {
        numberMin: 0,
        numberMax: 8000,
        interactive: true,
        scaleAngleStart: 77,
        scaleAngleEnd: 285,
        scaleWidth: 3,
        scaleLength: 10,
        frameSize: 6,
        boardAttr: {
          'stroke': 4,
      'fill': 'transparent',
      'opacity': '0.0'
        },
        frameSize: 6,
        outerFrameAttr: {
          'stroke': 'transparent',
          'stroke-width': 0.3,
      'fill': 'transparent',
      'opacity': '0.0'
        },
        innerFrameAttr: {
          'stroke': 'transparent',
          'stroke-width': 0.3,
          'fill': 'transparent',
      'opacity': '0.0'
        },
        needleAnimation: true,
        needleAnimationDuration: 6200,
        needleAnimationEasing: 'bounce',
    }
);

t.set(3400);
t.get();
显示车速表的html为:


更新:我明白了,我必须在每个“填充”:“透明”下添加“不透明度”:“0.0”。我更新了代码以反映这一点。

我明白了,我必须在每个“填充”:“透明”下添加“不透明度”:“0.0”。我更新了代码以反映这一点

var t = Raphael('speedometer').tachometer(50, 
{
    numberMin: 0,
    numberMax: 8000,
    interactive: true,
    scaleAngleStart: 77,
    scaleAngleEnd: 285,
    scaleWidth: 3,
    scaleLength: 10,
    frameSize: 6,
    boardAttr: {
      'stroke': 4,
      'fill': 'transparent',
      'opacity': '0.0'
    },
    frameSize: 6,
    outerFrameAttr: {
      'stroke': 'transparent',
      'stroke-width': 0.3,
      'fill': 'transparent',
      'opacity': '0.0'
    },
    innerFrameAttr: {
      'stroke': 'transparent',
      'stroke-width': 0.3,
      'fill': 'transparent',
      'opacity': '0.0'
    },
    needleAnimation: true,
    needleAnimationDuration: 6200,
    needleAnimationEasing: 'bounce',
});

t.set(3400);
t.get();

很高兴你解决了。将解决方案作为答案张贴在下面,并使用勾号将其标记为“已接受”。这将帮助网站上发现此问题的其他人。:)