2012-03-07 4 views
0

Android用PhoneGapを使用してアプリケーションを作成しています。アプリケーションのページの1つに、残りのページよりも大きいiFrame(ローカルコンテンツ付き)が含まれています(これは単一ページアプリケーションです)。iFrameはAndroid + PhoneGapのwindow.innerHeight/window.innerWidthを変更します

iFrameのページを表示すると、window.innerHeightとwindow.innerWidthのJavaScriptオブジェクトがiFrameの幅と高さに合わせて値を変更するため、残りの 'ページ'同じサイズではないため、正しく表示されません。

これは、DOMからiFrameを削除しても保持されます。

誰もこれに遭遇したのか、回避策があるのでしょうか?

答えて

0

まず、ここにバグがあることを確認してください!

私はちょうど同じ問題を抱えており解決しました。 window.innerWidthよりも広い場合、すべてのiframeを&イメージの幅を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", ""); 
     } 
    } 
} 
+0

興味深い問題を回避します。それを試してみましょう。ありがとう! – dSquared

関連する問題