0

jquery カラー ピッカーを作成しようとしています。クリックされた要素の背景色を読み取り、.result div で返す必要があります。

問題: 「現在クリックされている」要素をどのように説明すればよいですか?

これは私のコードです:

$("p").click(function () {
  var color = $("p").css("background-color");
  $(".result").html("That div is <span style='color:" +
                     color + ";'>" + color + "</span>.");
});

pだけでなく、クリックされたすべての要素でこれが機能するようにします。これを行う簡単な方法はありますか?

4

2 に答える 2

1
$(document).click(function(ev){
  var color = $(ev.target).css("background-color");   
});​

http://jsfiddle.net/tarabyte/9v2rA/

于 2012-12-01T13:16:50.300 に答える
0

各色を表すいくつかの要素を含むカラー ピッカー ボックスについて話している場合は、すべてのイベントを任意の要素でpディスパッチする必要はありません。clickSで作業できますpthis現在クリックされているものを参照するために使用できますp

var color = $(this).css("background-color");

したがって、コードは次のようになります。

$("p").click(function () {
  var color = $(this).css("background-color");
  $(".result").html("That div is <span style='color:" +
                     color + ";'>" + color + "</span>.");
});

HTML は次のようになります。

<div class="color-picker">
  <p style="background-color: #111;"></p>
  <p style="background-color: #333;"></p>
  <p style="background-color: #666;"></p>
  <p style="background-color: #999;"></p>
</div>
于 2012-12-01T13:16:46.960 に答える