callback jako metodu objektu rubrika: Programování: JavaScript
3
SebastianBusek
položil/-a 19.4.2013
upravil/-a 19.4.2013
Dobrý den,
trochu si hraju s javascriptem, resp. snažím se napsat vlastní komponentu pro práci s adresami, a využívám Bing Maps 7.
Ale zasekl v bodě, kdy chci obsloužit kliknutí do mapy a k tomu abychom mohl obsloužit kliknutí do mapy musím definovat handler nad mapou.
Problém je, že bych chtěl aby handler obsloužila metoda objektu vytvořeného pomocí konstrukční funkce.
Jde to?
Díky a příjemný pátek.
edit:
var AddressInformation = function () { var clickHandler = undefined; ... //this.clickHandler = Microsoft.Maps.Events.addHandler(this.map, 'click', ???); // ??? je název handleru // edit: tohle je funkční, ale asi by se mi více líbilo obsloužení pomocí metody this.selectingHandler = Microsoft.Maps.Events.addHandler(this.map, 'click', function (e) { alert('map clicked!'); }.bind(this)); // tohle ale bohužel házelo chybu: object doesn't support property or method 'bind', což je logické // this.selectingHandler = Microsoft.Maps.Events.addHandler(this.map, 'click', this.onMapClick).bind(this); // ale tohle je funkční verze this.selectingHandler = Microsoft.Maps.Events.addHandler(this.map, 'click', onMapClick.bind(this)); ... // private method?? var onMapClick = function (e) { ... }; // nebo public method?? this.onMapClick = function (e) { ... }; };
odkaz
3
SebastianBusek
odpověděl/-a 19.4.2013
Supr, vyřešeno.
this.selectingHandler = Microsoft.Maps.Events.addHandler(this.map, 'click', onMapClick.bind(this));
Pro plný přístup na Devel.cz se prosím přihlaste:
Nebo se přihlaste jménem a heslem: