我尝试实现来自服务器的动态标记列表。我注意到当用户非常快地点击按钮(例如0.5秒/秒)时,标记会以极大的延迟(有时超过3秒)重新出现......?可能导致什么?这是我的代码。非常感谢?
$("a#userBookmark").click(function () {
$.ajax({
type: "POST",
url: "Details.aspx/LoadUserBookmark",
data: "",
contentType: "application/json",
dataType: "json",
success: function (res) {
if (!res.d) {
window.location = "login.aspx?url=" + "<%= clsStringExtensions.base64Encode("Details.aspx")%>";
}
else {
$("#MapDetail").gmap3({
clear: {
name: "marker",
all: true
},
marker: {
values: res.d,
options: {
draggable: false
},
events: {
click: function (marker, event, context) {
var map = $(this).gmap3("get"),
infowindow = $(this).gmap3({ get: { name: "infowindow" } });
if (infowindow) {
infowindow.open(map, marker);
infowindow.setContent(context.data);
} else {
$(this).gmap3({
infowindow: {
anchor: marker,
options: {
content: context.data,
maxWidth: 400
}
}
});
}
}
// mouseout: function () {
// var infowindow = $(this).gmap3({ get: { name: "infowindow" } });
// if (infowindow) {
// infowindow.close();
// }
// }
}
}
});
}
},
error: function (errorObjString) {
var err = $.parseJSON(errorObjString.responseText);
alert(err.Message);
}
});
});
答案 0 :(得分:0)
我认为这与ajax中的服务器端代码有关。检查Web检查器中资源的加载时间,如firebug或chrome开发人员工具。