1

編集 - 申し訳ありませんが、これは非常に不明確でした。複数のホバー イベントの src に ID を配置したい。

$("#trig1").hover(
  function () { 
    $("#main").attr("src", "trig1.png");
  }, 
  function () {
    $("#main").attr("src", "4.png");
  }
);

$("#trig2").hover(
  function () {
    $("#main").attr("src", "trig2.png");
  }, 
  function () {
    $("#main").attr("src", "4.png");
  }
);

$("#trig3").hover(
  function () {
    $("#main").attr("src", "trig3.png");
  }, 
  function () {
    $("#main").attr("src", "4.png");
  }
);

html

<area id="trig1 2 3 etc.." shape="poly" alt="blah" coords="0,1,2,3,4,...">
<img src="4.png">

私は何かを試してきました

$('area').each(function(e)
   {
    $(this).hover(
        function () { 
        $(e).attr("src", $(e).attr("id") + ".png"});
    }, 
    function () {
        $("#main").attr("src", "4.png");
    });

これは機能しませんが、関数(e)に関して何をしているのかよくわかりません。これを読むのにまともな場所はありますか?

4

2 に答える 2

6
$('#trig1, #trig2, #trig3').hover(
  function () { $('#main').attr('src', this.id.substr(-1) + '.png'); }, 
  function () { $("#main").attr('src', '4.png'); }
);
于 2012-10-02T02:05:11.773 に答える
0

src属性をに設定しているようですがtrig1trig2trig3代わりに.png.

試す:

$(e).attr("src", ($(e).attr("id").charAt(4) + ".png") });

これは非常に脆弱な実装であることに注意してください。しかし、アイデアが得られれば、おそらくより良い (正規表現ベースの?) 実装を見つけることができます。

于 2012-10-02T02:06:21.343 に答える