我正在加載一個框架(Microsoft AJAX框架)以及Prototype和一個自動完成文本框。框架和自動完成都在向一些文本框添加行爲。我通常希望這兩個片段都可以運行,但不是一直運行。基本上,如果自動完成項目已被選中,我不希望框架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
@Jeff是的,那 – Griffin
太棒了。那工作。我不知道爲什麼我沒有想到這一點。我想我錯過了樹林。謝謝! – Jeff