我想利用Prototype.js的面向对象API编写自己的面向对象代码如下:
但是报错。:请大师解答。
this.initialize has no properties
[Break on this error] this.initialize.apply(this, arguments);
代码如下:
var Widget = new Object();
Widget.CodeInput = Class.create(); //这步里出错的。
Widget.CodeInput.prototype = {
initialize: function(element) {
alert(element);
},
getHint: function() {
//var va = this.element.getElementByClassName('hint')[0].value;
//alert(va);
}
}
但是报错。:请大师解答。
this.initialize has no properties
[Break on this error] this.initialize.apply(this, arguments);
代码如下:
var Widget = new Object();
Widget.CodeInput = Class.create(); //这步里出错的。
Widget.CodeInput.prototype = {
initialize: function(element) {
alert(element);
},
getHint: function() {
//var va = this.element.getElementByClassName('hint')[0].value;
//alert(va);
}
}
Widget.CodeInput = Class.create(); //这步里出错的。
Widget.CodeInput.prototype = {
initialize: function(element) {
alert(element);
},
getHint: function() {
//var va = this.element.getElementByClassName('hint')[0].value;
//alert(va);
}
}
看看你的Prototype.js是不是不完整或者版本不新
去下个1.5版的Prototype.js试一下呢!
http://prototypejs.org/assets/2007/1/18/prototype.js var Widget = {};
Widget.CodeInput = Class.create(); //这步里出错的。
Widget.CodeInput.prototype =
{
initialize: function(element)
{
alert(element);
},
getHint: function()
{
//var va = this.element.getElementByClassName('hint')[0].value;
//alert(va);
}
}
function testWidget()
{
var CodeInput = new Widget.CodeInput("测试一下");
}
如果是创建Widget.CodeInput的实例就不会出错,
但如果是创建new Widget()在IE6中会报错
var Widget = new Object();
改为
var Widget = {};