为什么不起作用?也许有人可以启发我:P
var balloon = function(){
};
balloon.prototype.iHeight = document.getElementById("wrapper").clientHeight;
window.onload = function(){
var oBalloon = new balloon();
}
我只是想更好地理解原型.
解决方法:
仅在对象初始化后才允许使用原型,因此将代码更改为以下内容:
经过一番研究之后,我发现似乎是错误的,这个问题看起来是这样的事实:在窗口加载之前,您使用的document.*仅在< body>已加载到DOM中.
因此,只有当您尝试选择的实际元素位于dom内部时,GetElementById()才起作用
var ById = function(i){return document.getElementById(i);}
var balloon = function(){}
window.onload = function(){
//All elements have loaded now
var oBalloon = new balloon();
//The below code should work fine
balloon.prototype.iHeight = ById("wrapper").clientHeight;
}
从上方可以看到仅在加载窗口后才使用文档