0

在本教程中教授如何在地图中放置标记:https ://developers.google.com/maps/articles/phpsqlajax_v3 有一个 doNothing() 函数用于:

request.onreadystatechange = doNothing;

这个函数/线的意义何在?是否只是为了证明您可以添加任何您想要的功能?

4

2 回答 2

3

有一些错误可能会发生readystate 4的readystatechange-event多次触发(参见例如http://code.google.com/p/chromium/issues/detail?id=159827

分配空函数可防止原始回调在受此错误影响的浏览器中多次执行。

于 2013-04-28T07:31:18.897 回答
0

它没有任何目的。这是一个虚拟的示例函数。(哈!所以我想。请参阅 Molle 博士的回答以进行更正。)

但是你在使用 jQuery 吗?如果是,则downloadUrl()无论如何都不需要该功能。您可以改用 jQuery 的$.get()or$.ajax()函数。你在哪里看到这样的代码:

downloadUrl( "phpsqlajax_genxml.php", function(data) {
    var xml = data.responseXML;
    // do stuff with xml
});

您可以将其更改为:

$.get( "phpsqlajax_genxml.php", function(xml) {
    // do stuff with xml
}, "xml" );

附带说明一下,很遗憾 Google Maps XML 教程从未更新为使用 JSON 而不是 XML。如果您从服务器生成 XML,那么生成 JSON 也同样容易,并且在 JavaScript 代码中使用 JSON 而不是 XML 更容易

于 2013-04-28T06:22:05.207 回答