我正在使用PhoneGap for Android创建应用。应用程序中的一个页面包含一个比其他页面大的iFrame(带有本地内容)(这是一个单页应用程序)。
我遇到的问题是,一旦查看了iFrame页面,window.innerHeight和window.innerWidth JavaScript对象会更改其值以匹配iFrame的宽度/高度,这会导致其余的“页面”显示不正确,因为它们的大小不同。
即使我从DOM中删除了iFrame,这仍然存在。
有没有人遇到这个问题或有解决方法的想法?
答案 0 :(得分:1)
我只是处于相同的情况,并且我也删除了iframe,(对我有用的)解决方案是将下一个放在您的html头中:
<meta name="viewport" content="width=device-width, initial-scale=1">
尽管这部分总是不必要的,因为innerWidth和innerHeight在桌面上不会很复杂,但是我花了6个小时。
我想知道它是否对您有用,再见。
答案 1 :(得分:0)
首先,确定这里有一个错误!
我刚才有同样的问题并解决了,这是怎么回事。 我改变了所有的iframe和&amp;对于宽度大于window.innerWidth的图像宽度为100%或更小。
以下是相应的HaxeJS代码:
resizeNodeChildrenTag(_contentContainer,"iframe");
resizeNodeChildrenTag(_contentContainer,"img");
private function resizeNodeChildrenTag(node:HtmlDom, tagName:String):Void
{
var tagNodes:HtmlCollection<HtmlDom> = node.getElementsByTagName(tagName);
// for all nodes with the given tag name
for (i in 0...tagNodes.length)
{
if(tagNodes[i].clientWidth > Lib.window.innerWidth)
tagNodes[i].setAttribute("width", "96%");
tagNodes[i].setAttribute("height", "");
}
}
}