我有一个使用文字符号定义的对象,如下所示(使用示例代码)。这是在一个外部脚本文件中。无法在我的JavaScript对象中重新定义函数
if (RF == null) var RF = {};
RF.Example= {
onDoSomething: function() { alert('Original Definition');} ,
method1 : function(){ RF.Example.onDoSomething(); }
}
在我的.aspx页面中我有以下..
$(document).ready(function() {
RF.Example.onDoSomething = function(){ alert('New Definition'); };
RF.Example.method1();
});
当页面加载的document.ready被称为但是alert('Original Definition');
只会被显示。有人能指引我走向正确的方向吗?我基本上想重新定义onDoSomething
函数。谢谢,本。
编辑
感谢您的意见,我可以看到正在工作。 method1
实际上是否调用另一种方法将onDoSomething()
函数作为回调参数,这很重要吗?例如
method1 : function(){
RF.Example2.callbackFunction(function() {RF.Example.onDoSomething();});
}
你的例子在这里工作正常:http://jsfiddle.net/TD7E4/必须有别的事情,你没有提到。 – RoToRa 2010-10-07 11:00:44
重新编辑:没有,这不应该有所作为。也许对'method1'的引用存储在某处,并且使用该引用而不是'method1'?你确定外部脚本文件在'document.ready'之前被加载和执行了吗? – RoToRa 2010-10-07 11:19:29