1

CSS オブジェクト (.thumbposition1 -> 20) の不透明度フェードを行う関数を作成しようとしています。背景画像に、(スクローラー上で) マウスオーバーされているグレースケールの対応するものと同じ CSS プロパティを動的に割り当てています。

これは、各クラスを名前で手動で指定する場合はうまく機能しますが、.each 呼び出しを導入して物事を最小限に抑えようとすると、悪いことが起こります: .hover は正常に動作し、マウスオーバーされている CSS クラスを返しますが、変更しようとすると (テスト) 上にある画像と下にある画像の CSS プロパティ。オフセット値は常に同じです (上:0px、左:200px)。

私は何を間違っていますか?愚かな間違い/恐ろしいコード/などを許してください。私は初心者です。

$(document).ready(function () {
$("img").each(function(i) {
    var i = i + 1;
    var iString = i.toString();
    var currentThumbPositionString_gs = ".thumbpositiongs" + iString;
    var currentThumbPositionString_c = ".thumbposition" + iString;
    var currentThumb_gs = $(currentThumbPositionString_gs);
    var currentThumb_c = $(currentThumbPositionString_c);
    var thumbPos = currentThumb_gs.offset();
    var thumbPos_c = currentThumb_c.offset();
    currentThumb_gs.hover(function() {  
            currentThumb_c.css({
                    left:thumbPos.left,
                    top:thumbPos.top,
                    height:"auto",
                    width:"auto",
                    "z-index":"-1000000",
                    visibility:"visible"});
            currentThumb_gs.stop().animate({"opacity": "0"}, "1500");
            },
            function() {
                    currentThumb_gs.stop().animate({"opacity": "1"}, "1500");
                    currentThumb_c.delay(355).queue( function() {
                    $(currentThumb_c).css({
                    height:"0",
                    width:"0",
                    visibility:"hidden"});
                currentThumb_c.clearQueue();
                });
            });
        });
    });
4

0 に答える 0