我想在Sencha Touch應用程序中使用jQuery插件。Sencha Touch發送信號給jQuery
jQuery插件應該在啓動時初始化,但只有在Sencha Touch完成填充DOM的魔法後才能進行初始化。
這是因爲插件掃描某些元素的DOM並改變它們。
如果我使用$(document).Ready()
,那麼<body>
標籤仍然未被Sencha Touch觸摸,即使我將Sencha Touch代碼放在jQuery代碼上方。
解決此問題的最佳實踐方法是什麼?
我想在Sencha Touch應用程序中使用jQuery插件。Sencha Touch發送信號給jQuery
jQuery插件應該在啓動時初始化,但只有在Sencha Touch完成填充DOM的魔法後才能進行初始化。
這是因爲插件掃描某些元素的DOM並改變它們。
如果我使用$(document).Ready()
,那麼<body>
標籤仍然未被Sencha Touch觸摸,即使我將Sencha Touch代碼放在jQuery代碼上方。
解決此問題的最佳實踐方法是什麼?
您需要點擊EXT自己的onReady事件。
Ext.setup({
// system-generated set-up code
onReady: function() {
// write your setup code here
}
});
您還可以使用painted
事件您的視圖:
config: {
...
listeners:{
painted: function(){
// all the DOM are in place
}
}
}
你,先生,是我的英雄。但我並不完全理解「系統生成的設置代碼」評論的意思。我只是複製粘貼你的代碼在我的整個「var App = new Ext.Application({...})」代碼中並且它工作正常。我做錯了嗎? –
如果您是從Designer開始的,而不是從頭開始編寫代碼,那麼您會發現Designer可能會在其中放置一些內容。 –
好的,非常感謝您的幫助。 –