0

[更新]私の悪い..私はコードを適切に調べていませんでした..私はそのような小さな間違いを見つけるべきでした..なんて残念です..私は今この質問を削除したいのですが無駄です...それは誰かが私がこれを削除するのを手伝ってくれるなら素晴らしい。私はそのようなばかげた質問がここにあるに値するとは思わない。


私はこの関数を持っています:function magic(a、b、c){

  $("#a").on("mouseover", "."+a, function() { 

    $("#a").css("background", b).css("left", c);
    alert(a); 

    if(a="a"){
         b = "b";
         c = "10%";
    }else{
         b = "a";
         c = "0%";
    }
    alert(b);
    alert(c);

    $("#a").animate({
         "top":c
    },{
         duration:2000,
         complete:function(){
         $("."+a).addClass(b).removeClass(a);
         }
    });
  });
}
        After I execute it twice with different arguments `onLoad`        
  magic("a","black","10px");
  magic("b","red","2px");

初めてmouseover .a場合はalert、「a」、「b」、「10%」の順になり ます* *ただし2回目 mouseover は、 「b」、「a」、「0%」の代わりに、.a「 b」、 「b」、「b」の順になります。 10%」。*私が言える結論は、if(a = "a"){b = "b"; c = "10%"; } else {b = "a"; c = "0%"; .balertalerta"a""b"alert 誰かがそれを説明し、解決策を提供してくれれば幸いです。

4

4 に答える 4

3

比較演算子は==、ではありません=

それで

if(a == "a"){ ...
于 2012-05-07T09:11:08.813 に答える
0

これは非常に奇妙な動作ではありません。常に次のよう=な比較演算子の代わりに代入演算子を使用します。==true

if(a == "a"){
     b = "b";
     c = "10%";
} else {
     b = "a";
     c = "0%";
}
于 2012-05-07T09:14:36.520 に答える
0
if(a = "a"){

ではありません

if(a == "a"){

--前者はに割り当て、次に式の値として"a"「戻り」 、2番目は比較を行ってまたはを返します。atruefalse

于 2012-05-07T09:11:23.947 に答える
0
if(a = "a"){..}

する必要があります

if(a == "a"){...}

また

if(a === "a"){...}
于 2012-05-07T09:19:09.593 に答える