0

次のコード:

<!doctype html>
<html>
    <head>    
        <script src="http://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.5/require.min.js"></script>
        <script>
            require(["nothere.js"], function()
            {
                alert("onload!");
            }, 
            function onerror(e)
            {
                alert("error!");
                console.log("error! - ", e);
            });  
        </script>

    </head>
</html>

Chrome と Firefox では、 nothere.jsファイルが存在せず、読み込めなかったため、予期したとおりにエラーが表示されます。

ただし、IE(すべてのバージョン)はonloadを示しています。何か案は?

フィドル

http://jsfiddle.net/AJu2j/

4

1 に答える 1

0

当面の回避策 (もちろん、最善の解決策ではありません):

var myrequire = function(file, onload, onerror)
{
    require([file], function(module)
    {
        if (typeof module == "object")
            return onload(module);

        return onerror();
    }, 
    onerror); 
}
于 2013-05-05T11:41:54.463 に答える