0

ここに私が直面している問題があります-(「myDiv」)というdivがあります。そして、setInterval 関数を設定しました。これは 2 秒ごとに実行されます。私が欲しいのは、setIntervalが実行されるたびに、div '15deg'を余分に回転させたいということです。

私はほとんどしました。しかし、文字列操作を行っていると、うまくいきません。//ここにコードがあります。

//css transform required value = 15ddeg not '15deg' なので、'15deg' を 15deg に抽出する方法 (qoute なし)

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-git2.js"></script>
<meta charset=utf-8 />
<script>

      $(function(){
        var foo = setInterval('animateDiv()', 2000);
    var count = 15;

    function animateDiv(){
       //console.log(count);

    count += 10;

       $('.myDiv').css({'-webkit-transform':'rotate(count + "deg")'});

      //console.log(count + "deg");
    }
      });

</script> 
<title>JS Bin</title>
</head>
<body>
  <div class='myDiv'></div>
</body>
</html>
4

6 に答える 6

1

2つの問題、

最初に、変換を設定します。文字列 'count' を値文字列で文字通り使用しています。文字列countを使用するだけでなく、値を文字列に連結する必要があります。

$('.myDiv').css({'-webkit-transform':'rotate('+count+'deg)'});

animateDiv次に、関数がグローバル関数ではなく、実際にはオンロード イベント内にあるため、関数が見つからないという JavaScript コンソール エラーが発生します。そのように文字列名で見つけることはできません。代わりに、試してみてください。関数を直接渡します(注、括弧を含めないでください。関数を呼び出したくありません。パラメーターとして割り当てるだけです):

var foo = setInterval(animateDiv, 2000);
于 2013-08-13T01:18:35.613 に答える