Javascript IE8的角嵌入SWF

Javascript IE8的角嵌入SWF,javascript,angularjs,flash,Javascript,Angularjs,Flash,我正在尝试使用angular嵌入一个SWF,我在我编写的指令中使用了angular 'use strict'; angular.module('flash-embed', []).directive('flashEmbed', [function() { return { restrict: 'A', replace: true, template: ['', '<object data="{{ src }}" type="application/x

我正在尝试使用angular嵌入一个SWF,我在我编写的指令中使用了angular

'use strict';

angular.module('flash-embed', []).directive('flashEmbed', [function()
{
  return {
    restrict: 'A',
    replace: true,
    template: ['',
     '<object data="{{ src }}" type="application/x-shockwave-flash">',
        '<param name="movie" value="{{ src }}" />',
        '<param name="allowscriptaccess" value="always" />',
        '<param name="allowfullscreen" value="true" />',
      '</object>'
    ].join(''),
    scope: {
      width:'@',
      height:'@',
      src: '@',
      path:'@',
      wmode:'@'
    },
    compile: function(elem, attrs, transcludeFn)
    {
      return function link (scope, element, attrs)
      {
        scope.$watch('path', function(path)
        {
          if (path)
          {
            if (!attrs.wmode) attrs.wmode = 'transparent';
            element.append('<param name="flashvars" value="path=' + attrs.path + '" />');
            element.append('<param name="wmode" value="' + attrs.wmode + '" />');
          }
        });
      };
    }
  };
}]);
“严格使用”;
角度.module('flash-embed',[])指令('flashmbed',[function()
{
返回{
限制:“A”,
替换:正确,
模板:['',
'',
'',
'',
'',
''
].加入(“”),
范围:{
宽度:“@”,
高度:“@”,
src:“@”,
路径:“@”,
wmode:“@”
},
编译:函数(elem、attrs、transcludeFn)
{
返回函数链接(范围、元素、属性)
{
范围$watch('path',函数(path)
{
如果(路径)
{
如果(!attrs.wmode)attrs.wmode='透明';
元素。追加(“”);
元素。追加(“”);
}
});
};
}
};
}]);
上面的指令在现代浏览器中非常有效。但我似乎无法在IE8中实现这一点。SWF没有加载,我在控制台中得到一个超级描述错误,它说:

[对象错误]说明:“参数无效。”消息:“无效 参数。“名称:“错误”编号:-2147024809

我发现了这个线索:


这说明IE不喜欢在对象标记被定义之后更改它。我半天都在努力解决这个问题。有人能帮忙吗?

如果是AngularJS 1.3或更高版本,问题可能是框架本身不支持IE8或更早版本:


我知道这一部分,所以我使用angular 1.2.9,谢谢。我应该说明的