如何在第二次点击时将onclick反转?

时间:2014-06-13 00:46:27

标签: javascript html css

我正在编写一个用户选择其可用性的程序。我有一个鼠标颜色,但我希望点击确认颜色。以下解决方案的唯一问题是,在第二次单击时,不会重置。如何让它重置?

<td onclick="javascript:this.style.background = '#000000';">

1 个答案:

答案 0 :(得分:1)

<强> jsBin demo

var $table = document.getElementById('myTable'),
    $td = $table.getElementsByTagName('td');

function fnToggle(){
  var io = this.io ^= 1; // Toggler
  this.style.backgroundColor = io ? "#000" : "transparent" ;
}

// Assign click handler (toward fnToggle) to all our TD elements
for(var i=0; i<$td.length;) $td[i++].onclick = fnToggle;

详细了解(?:) here的使用情况 详细了解使用^= here (+ bonus reading