jquery [object DispHTMLWindow2]问题IE8

时间:2015-03-02 10:33:21

标签: javascript jquery html ajax internet-explorer-8

仅在IE8上运行jQuery应用程序时出现异常。

我在网页执行开始时收到错误“Array.prototype.slice不是Javascript对象”。

我试图获得有关该对象的更多信息,我从debbuger得到它是一个对象DispHTMLWindow2。

然后我试图在代码上为jQuery的所有调用创建断点,并在jquery ajax调用中获得相同类型的对象。我试图修复它但没有成功。

function ajax(uri, method, data, username, password) {
var request = {
    url: uri,
    type: method,
    contentType: "application/json",
    accepts: "application/json",
    cache: false,
    dataType: 'json',
    data: JSON.stringify(data),
    beforeSend: function (xhr) {
        xhr.setRequestHeader("Authorization", 
            "Basic " + encodeForIE9(username + ":" + password));
    },
    error: function(jqXHR) {
        console.log("ajax error " + jqXHR.status);
    }
};
return $.ajax(request);

}

encodeForIE9是IE8和IE9的函数,用于在base64中编码ajax请求。

   function encodeForIE9(){
    if (!window.btoa) {
        window.btoa = function(mensaje) {
            return Base64.encode(mensaje);
        }
    }
    }

有关如何解决此错误的想法吗?

0 个答案:

没有答案