В случае IE7, кажется, что объект Youtube не «выгружается», когда он скрыт, по сравнению с IE8 или FF 3.6.Например, в IE8, если объект скрыт, функция youtubeobject.stopVideo не определена, но в IE7 она все еще существует.
Я думаю, что более элегантным решением является проверка, еслиФункция «stopVideo» существует в объекте Youtube, а затем вызывается.
function toggle(id){
var element = document.getElementById("id");
if(element.style.display != 'block'){
element.style.display = 'none';
var ytobject = document.getElementById("youtubeplayerid");
if(ytobject.stopVideo) {
ytobject.stopVideo();
}
} else {
element.style.display = 'block';
var element = document.getElementById("youtubeplayerid");
if(ytobject.playVideo) {
ytobject.playVideo();
}
}
}