6

私が達成したいのは、配列内の要素にカーソルを合わせると、deptmts配列内の対応する要素がbrnchesフェードインおよびフェードアウトすることです。あるべきだと思ったものを以下に追加しましたが、どこが間違っているのかよくわかりません。どんな助けでも大歓迎です。

var brnches = ["#branch01","#branch02","#branch03","#branch04"]
var deptmts = ["#depart01","#depart02","#depart03","#depart04"]

var brchhov = function() {
    for(var i=0; i<deptmts.length; i++){
        $(deptmts[i]).hover(
            function(){$(brnches[i]).stop(true).fadeTo("fast", 1);},
            function(){$(brnches[i]).stop(true).fadeTo("slow", 0);}
        );
    }
};
4

1 に答える 1

10

古典的な閉鎖の問題..

var brchhov = function() {
    for(var i=0; i<deptmts.length; i++){
       (function(num){
             $(deptmts[num]).hover(
                 function(){$(brnches[num]).stop(true).fadeTo("fast", 1);},
                 function(){$(brnches[num]).stop(true).fadeTo("slow", 0);}
             );
       })(i);
    }
};

フィドルをチェック

于 2012-11-21T22:49:15.287 に答える