我正在加载一个执行HTML5视频播放器脚本的ajax页面。Flash回退功能为html5media();
:
//Load 1st Case Study
$("#splash").live('click', function (e) {
$(this).fadeOut('slow', function () {
$('#case-studies').load('case-study-1.html', function() {
html5media(); //initiate Flash fallback
}).fadeIn();
});
e.preventDefault();
});
这个初始页面加载在IE7中运行良好&IE8。
问题是一旦这个页面被加载,有链接到4个视频再次使用ajax加载。我使用这个函数:
//Switcher
function csClients(url, client) {
$("#case-studies").fadeOut('slow', function() {
$('#case-studies').load(url, function () {
html5media(); //initiate Flash fallback
}).fadeIn();
});
}
//Page Loader
$("#cs-client-list li.client1 a").live('click', function(e) {
csClients('case-study-1.html', 'client1');
e.preventDefault();
});
原来我是使用return false;
,但没有子页面Flash视频将加载在IE7。当我切换到preventDefault时,视频在IE7中加载,但在IE8中仍然无法加载。
我也得到一个奇怪的错误在IE7 &IE8没有有用的反馈:
页面错误:
不明错误。
/(第49行)
Code: 0 (Char 5) URI:
http://www.mysite.com
这是我的索引页的第49行:
<section id="case-studies" class="main-section">
我有一种感觉,它与调用html5media();太多次了?
使用浏览器的domNode.innerHTML
实现传入AJAX内容似乎是一个问题。有一个插件(innerShiv)据说可以解决这个问题。(完全披露,我从来没有尝试过这个插件。)
根据插件的主页,这个问题在jQuery 1.7中已经修复,所以你可以尝试更新你的jQuery参考。
是html5media插件的一个问题。