![](/img/trans.png)
[英]Google.maps.Map Javascript API V3 compatibilty with jquery
[英]Javascript adding functions to google.maps.Map
我在将两个函数(其中一个调用另一个函数)添加到google.maps.Map对象时遇到了一些困难
google.maps.Map.prototype.addMarkerFromJson = function() {
alert("hi");
}
google.maps.Map.prototype.getPictureDataFromJson = function (jsonObj) {
this.addMarkerFromJson();
}
此代码引发错误:
Uncaught TypeError: Object #<Object> has no method 'addMarkerFromJson'
本身令人感到困惑,更使我困惑的是当我更改名称时:
google.maps.Map.prototype.anotherTestFunction = function() {
alert("hi");
}
google.maps.Map.prototype.aTestFunction = function (jsonObj) {
this.anotherTestFunction();
}
这仍然不起作用(不会触发警报),但是也不会在控制台中引发错误?
很想知道我在这里做错了什么,以及对怪异的解释!
编辑:再次查看时,我开始认为this.addMarkerFromJson();
中的this
this.addMarkerFromJson();
实际引用的是function()定义,而不是我将其附加到的Map对象? 在这种情况下,我将如何调用另一个函数?
回答我自己的问题:
这是我的愚蠢! 我使用mapObject.getPictureDataFromJson()作为jquery.get()的成功回调,因此this
指调用方(get函数)而不是map对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.