在iPad上滚动GWT窗口中的iframe

时间:2011-08-15 17:41:15

标签: ipad iframe scroll gxt

请注意:这不是“使用双指滚动”问题。无论是一个手指,还是两个,三个,或整个手,由于某种原因我们的iframe不会在iPad上滚动。 :)

以下是该方案:

在我们使用EXT-GWT构建的Web应用程序中,我们有一些窗口可以打开(最大化)弹出窗口并向用户显示一些窗体。这些表单在外部大部分时间都是在iFrame中呈现的,并且某些表单的内容在初始加载时会折叠 - 用户可以选择展开表单的任何部分,填写并提交。现在一切正常,除了在iPad上滚动。在加载和折叠iframe的内容之后(在客户端使用JS完成折叠,基本上,内容加载为默认扩展,然后由JS折叠)iPad无法为iframe提供搜索。即使在展开iframe的内容之后,iframe也不会进行任何滚动。

截至目前,我们已通过将EXT-GWT窗口的高度(使用JavaScript)增加到展开的iframe正文内容的大小来解决此问题。这使得整个窗口可以滚动,而不仅仅是窗口中的iframe。当它工作时,窗口变得很大,所以我想知道是否有更好的方式让我们提供滚动到iframe。

感谢您的帮助, 尼丁

3 个答案:

答案 0 :(得分:1)

对于iOS设备,您需要设置overflow:auto;或滚动不起作用。对于我的网络应用程序,我使用fancybox以模态方式显示iframe,一旦我更改了css文件中的溢出设置,两个手指滚动在iPad上完美运行。

答案 1 :(得分:0)

在尝试了(几乎)所有内容之后,我得出的结论是,将GWT窗口高度增加到iframe.body.height是使窗口/ iframe在iPad上滚动的唯一解决方案。希望这将有助于将来。

答案 2 :(得分:0)

我对GWT很新,但对我来说它的工作方式如下:

iframe的parent-div在我的情况下有一个类,x-component。 我这样输入了我的css文件: .x-component {-webkit-overflow-scrolling:touch;溢出:汽车;}

如果我将这些条目设置为不是类,而是设置为div元素本身。

希望有所帮助