【发布时间】:2011-02-21 05:54:36
【问题描述】:
我遇到了两个 jQuery 调用的问题。第一个是“加载”,它检索 HTML 并将其显示在页面上(它确实在返回的代码中包含一些 Javascript 和 CSS)。第二个是返回 JSON 的“getJSON”——返回的 JSON 是有效的。
在我尝试过的所有其他浏览器中一切正常 - 除了适用于 Windows 或 Mac 的 Chrome。有问题的页面在这里:
http://urbanistguide.com/category/Contemporary.aspx
当您在 IE/FF 中单击餐厅名称时,您应该会看到该项目展开并显示更多信息 - 并且地图显示在右侧。但是,如果您在 Chrome 中执行此操作,您得到的只是打印到屏幕上的 JSON 数据。
第一个问题点是这里调用“load”函数的时候:
var fulllisting = top.find(".listingfull");
fulllisting.load(href2, function() {
fulllisting.append("<div style=\"width:99%;margin-top:10px;text-align:right;\"><a href=\"#\" class=\"" + obj.attr("id") + "\">X</a>");
itemId = fulllisting.find("a.listinglink").attr("id");
...
在上面的代码中,回调函数似乎没有被调用。
第二个问题点是调用“getJSON”函数时:
$.getJSON(href, function(data) {
if (data.error.length > 0) {
//display error message
}
else {
...
}
在这种情况下 - 它似乎只是跟随链接而不是执行回调......是的,我正在执行“return false;”在所有这些结束时防止链接执行。
如果您想查看源代码,所有其余代码都内联在该页面上。
有什么想法吗??
谢谢
【问题讨论】:
-
不是您问题的真正答案,但如果您还没有这样做,可能值得在 Safari 中尝试,因为它也是基于 Webkit 的浏览器。这样您至少会知道是 Webkit 行为还是 Chrome 特性,这可能有助于您寻找解决方案。
-
你说得对——我应该在上面提到这一点。它在 Safari 中运行良好......到目前为止,我唯一遇到的问题是在使用 Chrome 时。
标签: jquery json google-chrome getjson