1

こんにちは、オブジェクトがある iPad でアプリを作成しています。iPad を動かすと、オブジェクトも加速度計機能を使用して移動する必要がありますMobeobject()

私のオブジェクトは動いていません。

// Start moving the object

var startMove = $('#startMove');

startMove.live("click",function()
{
    alert("startMoving>>");

    startMoving();

    $(this).hide();

});

// Start watching the acceleration

function startMoving(){

    alert("startMoving");

    var options = { frequency: 500 };

    alert("insidestartMoving");

    watchMove = navigator.accelerometer.watchAcceleration(moveObject, onError, options);

    alert("instartMoving");

}

// moveObject

function moveObject(acceleration) {

    alert("moveObject");

    var myObj = $('#obj');

    var wall = $('#obj_wall');

    var objPosition = myObj.position();

    var leftBoundary = 0;

    var topBoundary = 0;

    var rightBoundary = wall.width() - myObj.width() - 10; // 10 represents the 10px for the margin

    var bottomBoundary = wall.height() - myObj.height() - 10; // 10 represents the 10px for the margin

    if( acceleration.x < 0 && objPosition.left <= rightBoundary ) {

        myObj.animate({
            left:'+=10'
        },100);
    } else if( acceleration.x > 0 && objPosition.left > leftBoundary ) {
        myObj.animate({
            left:'-=10'
        },100);
    }
    if( acceleration.y < 0 && objPosition.top > topBoundary ) {
        myObj.animate({
            top:'-=10'
        },100);
    } else if(acceleration.y > 0 && objPosition.top <= bottomBoundary ) {
        myObj.animate({
            top:'+=10'
        },100);
    }
}
<!DOCTYPE html>
<html>
    <head>
    <title></title>

    <body>
  <div data-role="page">
  <div data-role="content">
          <div id="obj_wall">
          <div id="obj"></div>
      </div>
      <div>
          <a href="#" id="startMove" data-role="button">Start Moving</a>
      </div>
  </div>
  </div>

移動開始

4

2 に答える 2

1

アニメーションコードを以下に変更します

myObj.animate({ 'left': -10}, "slow");
于 2013-02-15T09:07:36.877 に答える
1

長い間分析して試してみたところ、問題はcordovaにあることがわかりました.cordova-1.7.0.jsを使用する必要が あり、上記のコードは完全に正常に動作します...

于 2013-02-15T10:28:27.580 に答える