Prototypeとオートコンプリートテキストボックスと共にフレームワーク(Microsoft AJAX Framework)を読み込んでいます。フレームワークとオートコンプリートの両方が、いくつかのテキストボックスに動作を追加しています。私は通常、両方のスニペットを実行する必要がありますが、常にではありません。基本的に、オートコンプリート項目が選択されている場合、私はフレームワークJSを実行したくありません。別のフレームワークからJavaScript関数を上書きすることができません
私はこのようなテクニックを使用してフレームワークを上書きしようと考えました:Overriding a JavaScript function while referencing the original。
var original_doSomething = doSomething;
doSomething = function()
{
//do something *else*
if(something) original_doSomething();
}
しかし、フレームワークは少し巧妙で、本来の機能を保持しているイベントハンドラを上書きすることは困難で証明されています。私は状況を模擬するためにjsfiddleを書いた。 http://jsfiddle.net/jeffrod/haHD4/2/
dosomething
を上書きするためにとにかく、私自身のロジックを追加できますか?
元のハンドラのバインドを解除し、次に私を元に戻す?それはあなたが意味することですか?それはうまくいくかもしれない。 – Jeff
@ジェフはい、それは – Griffin
です。それはうまくいった。なぜ私はそれについて考えなかったのか分かりません。私は木の森を見逃していたと思う。ありがとう! – Jeff