2013-03-15 61 views
0

我的公司使用Karmasoft的UltimateEditor来允许在textarea字段中输入丰富的文本以及拼写检查功能。window.open总是在iPad的移动版Safari中打开新标签

我们遇到的一个问题是,在iPad的Safari上,拼写检查程序在新选项卡中打开,而不是在当前窗口顶部显示新窗口。

我试着看看Safari的设置,看看我是否能找到一个“打开页面而不是窗口”设置,它存在于Safari的Windows中,但我找不到Safari上的类似设置iPad兼容。

我问上http://apple.stackexchange.com,基本回答是,这只是它是如何工作在iPad,因为“有在Safari for iOS的窗户没有概念,所以一个新的标签是你所得到的”

有没有其他人遇到这个问题,并且他们找到了解决办法? UltimateEditor插件使用window.open()打开拼写检查窗口。

回答

2

这就是移动Safari的工作原理。您无法像在非移动环境中那样打开“迷你窗口”。

你可以考虑做的是重写window.open函数,而不是打开一个带有iframe的div。这将如何传播并影响编辑,我不知道。如果更容易,您也可以选择尝试覆盖编辑器直接提取拼写检查器的方法。我采取了两条路线,根据组件的不同,每条路径都比另一条路径更容易。它只是取决于你正在编辑的组件。

请参阅本SO线程重写window.open的例子:How to override the window.open functionality?

我知道这是不是你很可能在寻找简单的答案,但在做这件事之前,我认为这将是你必须采取的路径。重写window.open或直接开始修改编辑器对象。或者选项三,找到另一位编辑。

+0

我只是想确认您无法打开“迷你窗口”,如您所述。 :)我们是否会实施您的建议将成为我的经理。谢谢。 – 2013-03-15 15:21:41

相关问题