我有两个colorbox弹出框,分别显示一个youtube视频。当他们完成播放时,我试图让他们自动关闭colorbox窗口。下面的代码在firefox中完美工作,但在IE中无法使addEventListener正常工作。我试过attachEvent没有成功。任何人都可以就如何解决这个问题提供任何建议吗?这看起来很简单,但我竭尽全力寻找解决方案。顺便说一下,这是我第一次在stackoverflow,它是非常令人印象深刻。javascript addEventListener onStateChange在IE中不工作
更新1:
好了,这是我当前的代码。它在FF中完美运行,但IE只输出很好。 IE8调试器不会报告任何错误,要么...
function onYouTubePlayerReady(playerId) {
if (playerId && playerId != 'undefined') {
if(playerId && playerId == 'ytvideo1'){
var ytswf = document.getElementById('ytplayer1');
alert('good');
} else if(playerId && playerId == 'ytvideo2'){
var ytswf = document.getElementById('ytplayer2');
} else {
}
setInterval('', 1000);
ytswf.addEventListener('onStateChange', 'onytplayerStateChange');
alert('great');
}
}
function onytplayerStateChange(newState) {
alert('amazing');
if(newState == 0){
$.fn.colorbox.close();
alert('perfect');
}
}
更新3:解决方案
简单地讲的onComplete在我的颜色框,并把在该SWFObject的,它在IE完美。
addEvent应该可以工作。你可以展示你如何使用addEvent的代码。 – Rajat 2010-05-21 21:10:34
我的意思是attachEvent。 – Rajat 2010-05-21 21:17:26
我只是做了ytplayer.attachEvent(“onStateChange”,onytplayerStateChange);就在addEventListener的下面,我没有放入一个条件,认为它没有关系。 – Derek 2010-05-21 21:20:15