Ik ben een jQuery 'plugin' aan het schrijven voor Google Maps.
Er zijn er al idd redelijk wat voor, maar ik wil graag dit zelf schrijven, zodat het precies kan wat ik wil.
Maar dat terzijde.
Eerst even de code:
Het gaat eigenlijk om dit stukje
Ik zou graag willen weten hoe ik op kan lossen dat het verkregen punt (point) daadwerkelijk in het object wordt vastgelegd binnen de options en niet in de kopie van dat object.
Als nu this.visualizeRange zou worden aangeroepen zou het resultaat null zijn.
Beetje kort door de bocht en onduidelijk: maar ik heb het zo ver mogelijk gestript.
Ik heb begrepen dat dit met de functionaliteit van bind zou moeten kunnen.
Ik begrijp echter niet hoe en wat ik moet binden in dit geval.
Heb wel de voorbeelden bekeken, maar ik begrijp niet hoe ik de getLatLng / geoCoder van Google zou moeten binden.
Iemand enig idee?
Hoop dat iemand de vraagstelling een beetje snapt of dit wel eens is tegengekomen en me kan helpen.
Er zijn er al idd redelijk wat voor, maar ik wil graag dit zelf schrijven, zodat het precies kan wat ik wil.
Maar dat terzijde.
Eerst even de code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| (function($) { $.extend({ jGMap: function(options) { var defaults = { origin: null , instance: $('#map') // Even snel op deze manier } defaults = $.extend(defaults, options); this.geoder = false; } }), $.extend($.jGMap.prototype, { findAddress: function(address){ if (!this.geocoder) { this.geocoder = new GClientGeocoder(); } var map = this; this.geocoder.getLatLng( address, function(point){ map.options.origin = point; } ); return this; }, visualizeRange: function(){ alert(this.options.origin); // en nu is dit dus nog gewoon null, logisch } }); })(jQuery); |
Het gaat eigenlijk om dit stukje
code:
1
2
3
4
5
6
7
8
9
10
| var map = this; this.geocoder.getLatLng( address, function(point){ map.options.origin = point; } ); return this; |
Ik zou graag willen weten hoe ik op kan lossen dat het verkregen punt (point) daadwerkelijk in het object wordt vastgelegd binnen de options en niet in de kopie van dat object.
Als nu this.visualizeRange zou worden aangeroepen zou het resultaat null zijn.
Beetje kort door de bocht en onduidelijk: maar ik heb het zo ver mogelijk gestript.
Ik heb begrepen dat dit met de functionaliteit van bind zou moeten kunnen.
Ik begrijp echter niet hoe en wat ik moet binden in dit geval.
Heb wel de voorbeelden bekeken, maar ik begrijp niet hoe ik de getLatLng / geoCoder van Google zou moeten binden.
Iemand enig idee?
Hoop dat iemand de vraagstelling een beetje snapt of dit wel eens is tegengekomen en me kan helpen.