0

この投稿でも同じ質問がされていますが、受け入れられた回答は役に立ちません(少なくとも私は)。

dojox.mobile.View を使用して、次のような 2 つのビューを表示します。マップ コンテナーが正しく表示されないことを除いて、すべて正常に動作します。トップページに小さなボックスとして表示されます。レイアウト ファイルに何か見落としがありますか? ありがとうございました!

<div id="view1" dojoType="dojox.mobile.View" selected="true">
    <h1 dojoType="dojox.mobile.Heading">View 1</h1>
    <ul dojoType="dojox.mobile.RoundRectList">
        <li dojoType="dojox.mobile.ListItem" icon="images/icon1.png" moveTo="view2" transition="slide">Go To View 2
        </li>
    </ul>
</div>

<div id="view2" dojoType="dojox.mobile.View" style="height:100%">
    <h1 dojoType="dojox.mobile.Heading" back="View 1" moveTo="view1">View 2</h1>
    <div dojoType="dojox.mobile.RoundRect" id="map_canvas" style="width:100% !important;height:100% !important;"></div>
</div>

アップデート:

<body style="visibility: visible;">
<div id="view1" class="mblView" selected="true" style="visibility: visible; width: 100%; height: 100%; top: 0px; left: 0px; display: none;" dojotype="dojox.mobile.View" widgetid="view1">
<div id="view2" class="mblView" style="visibility: visible; width: 100%; height: 100%; top: 0px; position: relative; left: 0px;" dojotype="dojox.mobile.View" widgetid="view2">
    <h1 id="dojox_mobile_Heading_1" class="mblHeading mblHeadingCenterTitle" moveto="view1" back="View 1" dojotype="dojox.mobile.Heading" style="" widgetid="dojox_mobile_Heading_1">
    <div id="map_canvas" class="mblRoundRect" style="width: 100% ! important; height: 100% ! important; position: relative; background-color: rgb(229, 227, 223); overflow: hidden;" dojotype="dojox.mobile.RoundRect" widgetid="map_canvas">
        <div style="position: absolute; left: 0px; top: 0px; overflow: hidden; width: 100%; height: 100%; z-index: 0;">

Firebug ログ

4

2 に答える 2

1

Dojo mobile + GoogleMapsAPIバージョン3でも同様の表示の問題が発生しました。

シモンズの解決策は機能しませんでしたが、別の方法がありました。

私は新しいトピックを作成しません。この簡単なヒントを教えてください。GoogleマップがDOMの後に読み込まれるかどうかを常に確認してください(たとえば、require(["dojo/domReady!"], function(){ ... })

于 2012-10-19T11:56:39.437 に答える
0

マップビューに使用するモバイルビューには、高さ:100% のみが設定されていますが、例では幅 + 高さ 100% が設定されています。

これにより、幅が正しく取得されないため、マップに使用される div 内で問題が発生する可能性があります。(私は以前にこのような同様の問題を見たことがありますが、別のものかもしれません)

編集:

何も浮かびません。おそらくスクリプトを使用して変更しようとしましたか?何かのようなもの:

var div = dojo.byId("map_canvas");
div.style.height = window.innerHeight+"px";
div.style.width = window.innerWidth+"px";
于 2012-05-15T10:26:36.667 に答える