在IE 9和8中,jQuery get和pipe不起作用

时间:2013-09-20 05:27:51

标签: jquery

我有一个包含此脚本的html页面:

<head>
    <meta charset="utf-8" />
    <title></title>
    <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
    <script>
        function GetWorkDone {
            alert(1);
            $.get( "http://Mylab:2323/Scripts/SC_FrameWork/SC_Live_2.1.js").pipe($.get("http://Mylab:2323/Scripts/SC_FrameWork/Sc_Widget.js", {}, function () {
                alert(2);

            }));
        }

        GetWorkDone();
    </script>
</head>
<body>

</body>
</html>

第二个警报不会在IE9&amp; 8。 适用于IE 10。

有解决方法吗?

问候。

1 个答案:

答案 0 :(得分:0)

您应该使用$.getScript()加载外部js文件,自{1.8}版以来已弃用pipe(),您可以使用$.when()代替:

$.when( $.getScript( "http://Mylab:2323/Scripts/SC_FrameWork/SC_Live_2.1.js" ), $.getScript( "http://Mylab:2323/Scripts/SC_FrameWork/Sc_Widget.js" ) )
  .done(function( r1, r2 ) {
      alert(2)
});

上述代码将在两个脚本成功加载后调用警报。 有关使用$.when()以及“完成”回调中的参数的更深入解释,请参阅the documentation