Javascript 脚本600:此操作的目标元素无效。(仅限IE)

Javascript 脚本600:此操作的目标元素无效。(仅限IE),javascript,ajax,internet-explorer,Javascript,Ajax,Internet Explorer,我有一个ajax日历,它在Chrome、Safari和Firefox中正常工作。但是,它在IE9或以下版本中不起作用 我收到以下错误SCRIPT 600:此操作的目标元素无效。 这是一个可湿性粉剂插件,但这是代码 function show_micro_ajax(response) { document.getElementById('wp-calendar').innerHTML = response; } function microAjax(url, cF) { this

我有一个ajax日历,它在Chrome、Safari和Firefox中正常工作。但是,它在IE9或以下版本中不起作用

我收到以下错误SCRIPT 600:此操作的目标元素无效。

这是一个可湿性粉剂插件,但这是代码

function show_micro_ajax(response) {
    document.getElementById('wp-calendar').innerHTML = response;
}

function microAjax(url, cF) {
    this.bF = function(caller, object) {
        return function() {
            return caller.apply(object, new Array(object));
        }
    };
    this.sC = function(object) {
        if (this.r.readyState == 4) {
            this.cF(this.r.responseText);
        }
    };
    this.gR = function() {
        if (window.ActiveXObject) return new ActiveXObject('Microsoft.XMLHTTP');
        else if (window.XMLHttpRequest) return new XMLHttpRequest();
        else return false;
    };
    if (arguments[2]) this.pb = arguments[2];
    else this.pb = "";
    this.cF = cF;
    this.url = url;
    this.r = this.gR();
    if (this.r) {
        this.r.onreadystatechange = this.bF(this.sC, this);
        if (this.pb != "") {
            this.r.open("POST", url, true);
            this.r.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
            this.r.setRequestHeader('Connection', 'close');
        } else {
            this.r.open("GET", url, true);
        }
        this.r.send(this.pb);
    }
}​

如果您不必支持IE6,请删除ActiveX行, 否则,请反转测试:

   if (window.XMLHttpRequest) return new XMLHttpRequest();
   else if (window.ActiveXObject) return new ActiveXObject('Microsoft.XMLHTTP');
   else return false;
我不确定这个实例是如何变成数组的, IE也可能不会,特别是如果sn ActiveX对象中的一个成员

return caller.apply(object, new Array(object))