长时间的读者,第一次海报......这是我的第一个问题,所以我很感激善良! :)
背景 - 我们开发了一个始于1991年的CGI Web应用程序(C& HTML / JavaScript)。因此,代码库有一些原始的方式...例如无论如何,我正在开发一个更新的,适合移动设备的版本,使用更多以客户为中心的代码(JavaScript,HTML5,CSS3,YUI3)。这只是一个新的父窗口,它使用嵌入式iframe来包含任何旧代码,只要它必须由于某种原因运行。有时,应用程序的iframe部分(较旧的代码)需要触发一个弹出窗口......这就是我的问题出现的地方,接下来......
我的问题 - 整个事情必须在单个iOS UIWebView实例中运行良好 - 所以,不允许弹出窗口!我也无法修改现有的代码库来摆脱弹出窗口或改变他们的行为。旧的代码库必须能够透明地使用其现有的win = window.open(...)
和win.document.write(...)
来电。
所以,我设计了一个覆盖window.open(...)
方法(每当在旧应用程序的iframe中调用)时,使用自定义方法在较新的父文档中显示YUI-Panel对话框。每当旧代码调用弹出窗口时,我都会显示YUI-Panel,但是我无法将弹出窗口的文档(从CGI)传输到YUI-Panel。
我现在想知道我是否过度设计了它。还有其他人做过这样的事吗?
我的代码非常复杂,所以我毫不犹豫地用垃圾邮件“垃圾邮件”我的第一个问题...但是,如果有人感兴趣的话,我很乐意分享它。
我的解决方案......
与此同时,我只是使用document.write()
XMLSerializer.serializeToString(MyDocumentObject)
调用