1

イメージ スワップを複製しようとしましたが、3 つのスワップのそれぞれでマウスアウトがイメージ 3 になってしまいました。スワップを互いに区別して、同じイメージを呼び出さないようにする方法を理解する上で私が得ることができる助けは大歓迎です、ありがとう!

//---imageswap1

if(document.images) {
    cars1 = new Array();
    cars1[1] = new Image();
    cars1[1].src = "car4.png";
    cars1[2] = new Image();
    cars1[2].src = "car1.png";
}

function swapping_pics(picture_name, value_2) {
    document.images[picture_name].src = cars1[value_2].src;
}

//---imageswap2

if(document.images) {
    cars2 = new Array();
    cars2[1] = new Image();
    cars2[1].src = "car5.png";
    cars2[2] = new Image();
    cars2[2].src = "car2.png";
}

//---imageswap3

function swapping_pics(picture_name, value_2) {
    document.images[picture_name].src = cars2[value_2].src;
}

if(document.images) {
    cars3 = new Array();
    cars3[1] = new Image();
    cars3[1].src = "car6.png";
    cars3[2] = new Image();
    cars3[2].src = "car3.png";
}

function swapping_pics(picture_name, value_2) {
    document.images[picture_name].src = cars3[value_2].src;
}


<div id="imageswap1" onMouseOver="swapping_pics('car1',1)" onMouseOut="swapping_pics('car1',2)" href="javascript:void">
    <img name="car1" border=”0” src="car1.png" alt="car1">
</div>

<div id="imageswap2" onMouseOver="swapping_pics('car2',1)" onMouseOut="swapping_pics('car2',2)" href="javascript:void">
    <img name="car2" border=”0” src="car2.png" alt="car2">
</div>

<div id="imageswap3" onMouseOver="swapping_pics('car3',1)" onMouseOut="swapping_pics('car3',2)" href="javascript:void">
    <img name="car3" border=”0” src="car3.png" alt="car3">
</div>
4

1 に答える 1

1

同じ名前の関数を複数持つことはできません: swapping_pics、問題を解決するには、各関数に 、 、 のように id を追加swapping_pics_01できswapping_pics_02ますswapping_pics_03

しかし、これはあなたが持っている混乱を解決しません。すべてのコードの代わりに、CSS ははるかに良い方法でそれを行うことができます...

HTML:

<div id="imageswap1" class="swap"></div>
<div id="imageswap2" class="swap"></div>
<div id="imageswap3" class="swap"></div>

CSS:

// This class "swap" is general to all the divs
.swap {
    width: 500px; // This is the image size
    height: 400px;
}

#imageswap1       { background-image: url("car01.png"); }
#imageswap1:hover { background-image: url("car04.png"); } // Mouse over 1

#imageswap2       { background-image: url("car02.png"); }
#imageswap2:hover { background-image: url("car05.png"); } // Mouse over 2

#imageswap3       { background-image: url("car03.png"); }
#imageswap3:hover { background-image: url("car06.png"); } // Mouse over 3

例をいじる: http://jsfiddle.net/qnw6j/

于 2013-02-09T03:21:28.153 に答える