Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IE7&;IE8使用ajax执行函数时出错_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript IE7&;IE8使用ajax执行函数时出错

Javascript IE7&;IE8使用ajax执行函数时出错,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在加载一个ajax页面,该页面执行HTML5视频播放器脚本。闪存回退功能是html5media(): //Load 1st Case Study $("#splash").live('click', function (e) { $(this).fadeOut('slow', function () { $('#case-studies').load('case-study-1.html', function() {

我正在加载一个ajax页面,该页面执行HTML5视频播放器脚本。闪存回退功能是
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();
});
最初我使用的是
returnfalse但没有一个子页面Flash视频会加载到IE7中。当我切换到preventDefault时,视频加载到IE7中,但仍然没有加载到IE8中

我在IE7和IE8中也遇到了一个奇怪的错误,没有任何有用的反馈:

第页上的错误:
未指明的错误。
/(第49行)
代码:0(字符5)URI:
http://www.mysite.com

这是我的索引页中的第49行:

<section id="case-studies" class="main-section">


我觉得这与调用html5media()有关;太多次了?不知怎的…

对传入的AJAX内容使用浏览器的
domNode.innerHTML
实现似乎有问题。有一个插件()可以解决这个问题。(完全公开,我从未尝试过这个插件。)


根据插件的主页,这个问题在jQuery 1.7中得到了解决,因此您可以尝试更新jQuery参考。

是html5media插件的问题。

值得一提的是,IE 7或8I使用Modernizer都不支持section元素。在这种情况下,这可能不起作用吗?如果我把html5media()注释掉;错误消失了。这可能与html5media()有关吗;在#案例研究中运行,然后在加载其他ajax页面时在同一个div中重新运行?您可以通过手动调用
html5media()来测试它是ajax还是
html5media()连续几次。html5media()中有什么内容?单独调用它,确保AJAX请求、元素衰减和其他DOM操作不会干扰。我相信这与我使用的插件(HTML5媒体)有关。我切换到一个完全不同的视频播放器脚本(MediaElement.js),不再有问题。(尽管我不得不完全重新编码该部分。)