У вас две проблемы.
- Вы установили неправильный атрибут на
param[name="movie"]
. Вы устанавливали атрибуты data
вместо атрибута value
.
- Ваша проблема не обязательно является jQuery; это поведение флэш-плеера в WebKit. Не похоже, что проигрыватель Flash в WebKit автоматически перезагружается при изменении базового объекта DOM.
Попробуйте этот код. Он перезаписывает правильный атрибут и эффективно перезагружает флеш-плеер, удаляя, а затем повторно добавляя объект флеш-плеера из и в DOM.
jQuery('#video-page-wrapper li a').click(function() {
var url = "http://youtube.com/v/" + jQuery(this).attr("id");
jQuery('.video-page object').attr({ data: url });
jQuery('.video-page param[name="movie"]').attr({ value: url });
jQuery('.video-page object').remove().appendTo('.video-page');
});