1

IE とその他の世界との間のいくつかの css 制限により、.animate を px ではなく % として使用するか、objectToMove ジャンプ (IE のみ) を使用してアニメーション化する必要があります。

したがって、次のものが使用される場合

 $('.myClick').click(function() {
  $('.objectToMove').animate({
    top: '+=10%'
          }, 'fast', function() {
    // Animation complete.
  });
});

objectToMove を画面の高さの 10% だけ移動します。objectToMove の高さの 10% として移動したいと思います。

これは、画面とオブジェクトの高さを取得して、画面の高さに対するオブジェクトの割合などを計算しなくても可能ですか?

キャンバスサイズ = 720px

objectToMove = 100px

objectToMove を 72px ではなく 10px 移動したい

thxアート

4

2 に答える 2

1

簡単に言えば、

top: '+=' + ( $('.objectToMove').height() / 100 ) * 10;

オブジェクトの目的のパーセンテージの高さを取得できます

于 2012-06-22T06:25:58.737 に答える
0

これが私が持っているものです。パーセンテージで作業を続けることを余儀なくされている場合、これでうまくいくはずです。

まず、要素の高さと HTML を取得します。

var moveObject = $('.objectToMove').height();
var html = $('html').height();

次に、オブジェクトをそれ自体の高さの 10% 動かすとどうなるかを調べます。

var distance = (moveObject/html)*10;

次に、オブジェクトを上から高さの 10% 移動します。

$('.objectToMove').animate({
    top: '+='+distance+'%'},1500);

これをテストしたところ、うまくいきました。うまくいかない場合はお知らせください。

于 2012-06-22T06:16:26.460 に答える