この質問は人気があるようですが、jQuery のバージョンはありません。
私は2つのクラスを持っています.2番目は最初のものから拡張されています.
拡張メソッドは here からコピーされます。
function UIButton(o){
if (typeof(o) != 'undefined') $.extend(true, this, o);
this.setOutput=function(divname){
alert("first");
}
}
function UIButton2(o) {
if (typeof(o) != 'undefined') $.extend(true, this, o);
this.setOutput=function(divname) {
alert("second");
}
return new UIButton(this);
}
jqueryのドキュメントによると
2 番目のオブジェクトのメソッドは、 を使用して最初のオブジェクトのメソッド (同じ名前) をオーバーライドする必要があります$.extend()
。
ただし、html で確認したところ、最初のオブジェクトの機能がまだ正常に機能していることがわかりました。(Alert "first"...) これにより、そのサブクラスは関数をオーバーライドできなくなります。
そこで、これがどのように発生し、どのように解決するかをお聞きしたいと思います。「秒」でアラートしたい……