0

Dojoxオープナーを使用しようとしています。私は道場の例から直接例を実行しようとしましたが、実行しようとすると失敗します: Uncaught TypeError: Cannot use 'in' operator to search for 'offsetWidth' in undefined

<button onclick="dijit.registry.byId('customPicker').show()">slide up</button>
<div id="customPicker" data-dojo-type="dojox/mobile/Opener">
     <h1 data-dojo-type="dojox/mobile/Heading" label="Custom Picker">
          <div data-dojo-type="dojox/mobile/ToolBarButton" label="Done" class="mblColorBlue" style="width:45px;float:right;" onClick="dijit.registry.byId('customPicker').hide()"></div>
     </h1>
     Hello There!!!
</div>

私はこのフィドルに例を入れました: http://jsfiddle.net/VD9RN/1/

4

1 に答える 1

0

画面サイズが一定の閾値を下回った場合、道場が下からスライドアップする方式を採用している問題が見つかりました。この例はこのような場合に機能しますが、dojo がタブレット解像度であると判断した場合、内容を表示するためにツールチップ機能を使用します。この場合は失敗していました。ツールチップ オーバーレイには、show コマンドの aroundNode 引数が必要です。だから私は上のボタンを次のように変更しました:

<button onclick="dijit.registry.byId('customPicker').show(this)">slide up</button>

そして、タブレットと電話でうまくいきました。

于 2013-06-25T15:54:16.200 に答える