这个简单的代码可以在FF和Chrome中正常工作,但在IE8中则不能:
var pathtop = $('#autoplay').find('embed').attr('src');
pathtop = pathtop.replace('http://www.youtube.com/v/', '');
给出:
'undefined'为null或不是第2行上的对象错误
我也尝试过这样的事情:
pathtop = pathtop.replace('', '');
和同样的错误!
我在这个项目中使用jQuery。
最佳答案
IE上的pathtop最有可能为null,因为jquery查找/属性链失败。将其分成几部分,找出哪一层($('#autoplay'),.find()
或.attr()
返回空值。
临时猜测-IE忽略了嵌入标签,而支持<object>
,因此DOM树中没有嵌入。并且您试图获取不存在的dom对象的src,将pathtop设置为null,这意味着没有可用的replace方法。