Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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 未激发HashTransport回调的easyXDM rpc_Javascript_Jquery_Internet Explorer 7_Easyxdm - Fatal编程技术网

Javascript 未激发HashTransport回调的easyXDM rpc

Javascript 未激发HashTransport回调的easyXDM rpc,javascript,jquery,internet-explorer-7,easyxdm,Javascript,Jquery,Internet Explorer 7,Easyxdm,我使用的是EasyXDM2.4.17。 我已经使用远程“tunnel.html”设置了RPC,它使用jQuery进行AJAX调用 对于所有带有postMessage的现代浏览器来说,一切都很好。 当我在ie7上进行测试时,easyXDM会返回到HashTransport,并且一切正常,除了我从未看到AJAX响应。我可以看到请求实际上很好地返回,但我的回调由于某种原因从未被触发 我的tunnel.html文件如下所示: <!DOCTYPE html> <html>

我使用的是EasyXDM2.4.17。 我已经使用远程“tunnel.html”设置了RPC,它使用jQuery进行AJAX调用

对于所有带有postMessage的现代浏览器来说,一切都很好。 当我在ie7上进行测试时,easyXDM会返回到HashTransport,并且一切正常,除了我从未看到AJAX响应。我可以看到请求实际上很好地返回,但我的回调由于某种原因从未被触发

我的tunnel.html文件如下所示:

<!DOCTYPE html>
<html>
    <!--[if lt IE 9]>
    <script type="text/javascript" language="javascript" src="https://mydomain.net/json2.min.js"></script>
    <![endif]-->
    <script src="https://mydomain.net/easyXDM-2.4.17.js"></script>
    <script src="https://mydomain.net/jquery-1.10.2.min.js"></script>
    <script>
        function apiTunnel (endpoint, params, method, callback) {
            var options = {
                url: endpoint,
                data: params,
                type: method,
                complete: function (xhr) {
                    var response = {};
                    try {
                        response.data = JSON.parse(xhr.responseText);
                    } catch (ex) {
                        response.error = xhr.responseText;
                    }
                    callback(response);
                }
            };
            jQuery.ajax(options);
        }
        var rpc = new easyXDM.Rpc({}, {local: { apiTunnel: apiTunnel }, serializer: JSON});
    </script>
</html>
更新:经过一些调试后,我的响应似乎卡在了队列中。隧道端在主机页的图像上失败。这会阻塞队列,并且从不让AJAX响应通过。有什么想法吗

更新2,如果我设置了一个计时器来移除等待锁,并在2秒后调度队列,它将工作。 我对此感觉不太好,但确实有效。我不确定最初调用失败的原因——如果可能的话,我宁愿修复根问题,我只是不确定我是否完全理解根问题是什么