我正在为一家开发中的公司工作,并且正在对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