Prototype.js的问题。

yuanetking 2007-02-08 09:30:13
我想利用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);
}
}
...全文
311 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Karl_He 2007-02-14
  • 打赏
  • 举报
回复
你代码中的
var Widget = new Object();
改为
var Widget = {};
zhongmao 2007-02-14
  • 打赏
  • 举报
回复
正如楼上所说,代码没有错。

你是如何创建对象的呢?
如果是创建Widget.CodeInput的实例就不会出错,
但如果是创建new Widget()在IE6中会报错
Karl_He 2007-02-12
  • 打赏
  • 举报
回复
帮你测了一下,你的代码是正确的。
看看你的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("测试一下");
}
  • 打赏
  • 举报
回复
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);
}
}
yuanetking 2007-02-10
  • 打赏
  • 举报
回复
渴望高手来帮我分析分析。

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧