我正在爲一家開發中的公司工作,並且正在對Web應用程序進行重大設計,每次點擊後重新加載所有內容以廣泛使用Javascript,因此它實際上就像一個真正的Web應用程序。其中一個特點是使用基於Web的Painter(想到Web上的MSPaint),我將其嵌入到按需頁面中。在圖像上傳完成後,Web應用程序將卸載小程序並繼續顯示文件上傳到的目錄。通過Javascript殺死Java Applet
這是麻煩開始的地方。這一切都適用於IE和Safari,但不適用於Firefox 3.5(儘管3.0完美)。 Firebug告訴我expando屬性丟失了。
我以前正在處理的Web應用Tiparlo有一個類似的問題(實際上,通過jQuery在applet上完成的任何操作都有問題),但通過包裝div來控制(隱藏和顯示) div而不是applet。這不幸的是不適用於這個Web應用程序,因爲Applet必須被銷燬,而不僅僅是隱藏和顯示,因爲它佔用了太多的資源以便在整個不需要的時間運行。
簡而言之:是否有可能使Applet通過Javascript破壞自己?另外:是否有解決jQuery/expando/applet問題?我知道小程序在HTML 4.01嚴格中已被棄用,但將其更改爲對象現在不是一個選項。
編輯:我已經添加了Firefox + Firebug的圖片,向您顯示實際的錯誤消息。發佈代碼沒有上帝,因爲它在其他所有瀏覽器上都是完美無瑕的,並且是Firefox 3.5特有的問題。 Here be pictures
注意:您可以忽略來自button.js的JS Bug。
如果您銷燬環繞小程序的DIV,會發生什麼情況? (不隱藏它,用removeElement和刪除它 – 2009-08-12 16:00:26
我試過了,但無濟於事。我的理論:我想通過隱藏父div,瀏覽器本身也照顧隱藏孩子,而不是Javascript。刪除父div,這也是Javascript的工作,刪除子applet,從而導致expando Bug出現 我一直在尋找jQuery Bug Tracker,並且該1.3.3版本的路線圖中列出了該特定的Bug。由於我不能等待它自己修復(由jQuery開發團隊修復),我必須找到一個解決方法。 – Mike 2009-08-13 06:28:48