在同一頁面上使用Mootools和ExtJs時存在兼容性問題。 Mootools會拋出以下錯誤:Mootools和ExtJs 4.x似乎不兼容,如何解決?
Uncaught TypeError: Property 'id' of object #<HTMLDocument> is not a function
我們該如何使用這兩種框架?有沒有解決方法?
在同一頁面上使用Mootools和ExtJs時存在兼容性問題。 Mootools會拋出以下錯誤:Mootools和ExtJs 4.x似乎不兼容,如何解決?
Uncaught TypeError: Property 'id' of object #<HTMLDocument> is not a function
我們該如何使用這兩種框架?有沒有解決方法?
這看起來像一個document.id('..')
參考的問題,它的定義,但它不是MooTools的方法......如果它沒有指出MooTools的方法
任何方法都行不通。
我會爭辯說,ExtJS或您的應用程序已添加屬性id
文檔,這不是一個函數,因爲它可能是一個字符串或其他原語。
相當肯定,ExtJS的就不會被覆蓋document.id
,特別是考慮到他們(煎茶)採用MooTools的核心團隊開發@subtlegradient(托馬斯aylott)誰合寫的油滑選擇器引擎,幫助工程師在MooTools的的document.id
過渡簡單$ in 1.11
你可能不能做document.id = $
來恢復它,因爲它是通過引用,它被覆蓋。
唯一的機會就是試裝MooTools的ExtJS的加載和啓動後 - 或負載MooTools的,之後立即保存像document.$id = document.id;
一個裁判,加載ExtJS的,然後將其恢復回來通過document.id = document.$id; delete document.$id
當準備 - 仍然沒有保證,這將在運行合適的時間。你真的需要看看什麼修改你的document
對象在web檢查器(你可以添加一個觀察器)
不錯,你得到它的工作! +1出現異常問題 – Sergio
在同一頁面上使用兩者的原因是什麼?看起來像一個矯枉過正的,不是? – dbrin
@dbrin我嘗試升級使用舊版框架(jxlib,基於mootools)編寫的應用程序並逐步完成。這涉及重寫所有的JavaScript,我希望能夠保留應用程序的一部分。 –