0

phonegap androidでアプリケーションを開発しています。

デバイスの幅を準備しようとしています。このコードを試しました。

アプリケーションが最初に提供を開始したとき(480、私はsamsung i9003を使用しています)、幅(アラート)、戻るボタンを押してアプリケーションを再度実行すると、320が表示されます。

ここで立ち往生しています..助けてください

<!DOCTYPE HTML>
<html>
<head>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <meta name="format-detection" content="telephone=no" />
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
        <meta name="viewport" content="width=device-width; user-scalable=no" />
        <link rel="stylesheet" href="css/jquery.mobile-1.1.1.css" />
        <link rel="stylesheet" type="text/css" href="css/index.css" />
        <title>Title</title>
    </head>
<body onload="onLoad()">


<div class="logo"></div>
<div class="content">
<div id="justt"></div>
</div>


        <script type="text/javascript" src="cordova-2.2.0.js"></script>
        <script src="js/jquery.js"></script>

  <script type="text/javascript" charset="utf-8">


    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);
    }


    function onDeviceReady() {

    var width=0;
    width=$(window).width()

    $('#justt').css('width',(width)+'px');
    alert(width);
    }

    </script>



</body>
</html>
4

1 に答える 1

1

ページ コンテンツの幅を取得してみませんか。

var screenWidth = 0;
$(window).bind('resize', function () {
    screenWidth = $('[data-role="page"]').first().width());
}).trigger('resize');​​​

これにより、ページのサイズが変更された場合でも、ページ コンテンツの幅が確保されます。

ビューポートの画面サイズ ($(window).width()) を取得するときに常に完璧な結果が得られるとは限りません。デバイスによって動作が異なります。

$(window).width() と $(window).height() は、画面のサイズではなく、ビューポートのサイズを提供します。ここでは、この問題の詳細な概要を確認できます。

于 2012-12-11T13:49:51.667 に答える