通过原型继承对象
Inheritance of an object through prototype
我知道这个问题表明我对基于对象编程的基本概念感到困惑,但我希望有人能帮助我,因为我似乎无法理解:
function MagnifyGlass(){
var magnifiedTiles = L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png');
var magnifyingGlass = L.magnifyingGlass({layers: [ magnifiedTiles ]});
this.magnifyingGlass = magnifyingGlass;
}
MagnifyGlass.prototype.begin=function(){
$("#map_canvas").mouseenter(function(){
this.magnifyingGlass.addTo(map);
}).mouseleave(function(){
map.removeLayer(this.magnifyingGlass);
});
}
MagnifyGlass.prototype.end=function(){
map.removeLayer(this.magnifyingGlass);
$("#map_canvas").unbind();
}
var mg= new MagnifyGlass();
mg.begin();
我想在这里实现的是,MagnifyGlass
创建一个对象,该对象用作传单映射(位于div map_canvas
中)中的层。然后,通过调用.begin
或.end
,我切换该层是否出现。我正确地创建了层(magnifyingGlass
),并且调用了.begin
,但不知何故,magnifyingGlass对象没有到达原型,我很确定我不知怎么搞砸了。谢谢你的帮助。
这是一个范围问题。这里有一个修复:
MagnifyGlass.prototype.begin=function(){
var self = this;
$("#map_canvas").mouseenter(function(){
self.magnifyingGlass.addTo(map);
}).mouseleave(function(){
map.removeLayer(self.magnifyingGlass);
});
}
LJ_1102就是这么说的。
相关文章:
- JavaScript对象继承问题
- 我的Javascript对象继承自什么
- javascript对象继承-子类和超类
- 向扩展数组的JS集合添加对象(继承?)
- 使 HTML 元素从自定义对象继承事件
- 如何从“构造函数返回另一个对象”对象继承
- 在 Ember.js 中,如何使用 super() 遍历对象继承树
- 如何实现 JavaScript 对象继承
- Javascript 对象继承
- 使用jquery的函数对象继承's延伸
- 是否可以从javascript函数对象继承
- 从数组中的对象继承/调用函数
- 如何强制javascript数组从我的自定义对象继承
- 为什么不't我的对象继承了keys函数
- JavaScript中的对象继承
- 通过clone()实现对象继承是如何工作的
- 原型继承为什么子对象不从父对象继承方法
- 从Error对象继承-其中是消息属性
- JavaScript对象继承问题
- 对象继承