【发布时间】:2011-02-13 16:42:53
【问题描述】:
我正在编写一个小工具,它将显示我的游戏服务器的当前状态。 它通过返回 JSON 的 URL 获取其信息。一开始它工作得很好。但现在它似乎卡在了 AJAX 调用上。
这是我的脚本:
function start() {
$("body").css({
height: "100px",
width: "130px",
margin: 0
});
$("#refresh").click(function (event) {
event.preventDefault();
fetch_info();
});
fetch_info();
};
function fetch_info() {
var now = new Date();
var msec = now.getTime();
ajax = new ActiveXObject("Msxml2.XMLHTTP");
ajax.open("GET", "http://the.amazing.url?msec="+msec, true);
ajax.onreadystatechange = function() {
if (ajax.readyState === 4) {
if (ajax.status === 200) {
var json = $.parseJSON(ajax.responseText);
if (json.map != "error")
{
$("#map").html(json.map);
$("#mode").html(json.gamemode);
$("#current").html(json.players);
$("#max").html(json.max_players);
}
else
{
$("#map").html("crashed");
}
} else {
$("#map").html("error");
}
}
else
{
$("#map").html("fetching data");
}
}
ajax.send(null);
}
当小部件启动时,它显示“正在获取数据”,但之后它什么也没有发生。它获取有效的 JSON 数据。
有人知道调试此脚本的原因或方法吗?
【问题讨论】:
-
安全问题?它确实在外部。也许您需要(再次)将 the.amazing.url 添加到您信任的站点
标签: javascript ajax windows windows-desktop-gadgets