下面是jQuery代码的一个简单示例:
$(".black").on("click", function() { $(this).css("color", "red"); });
当一个css类为“black”的元素被点击时,这个元素的颜色会变成红色。现在,如何用纯JavaScript编写上面的代码?请告诉我当Jquery $(this)用于类选择器时,它的JavaScript等价物是什么。
p3rjfoxz1#
var blacks = document.getElementsByClassName('black'); for(var i =0; i< blacks.length; i++){ blacks[i].onclick = function(){ this.style.color = 'red'; } }
x一个一个一个一个x一个一个二个x
6fe3ivhb2#
没有$(this)的纯javascript等价物,因为$()返回一个jQuery对象......相反,您必须使用纯javascript构造来执行相同的操作,如
$(this)
$()
function handler() { this.style.color = 'red'; } var els = document.getElementsByClassName(''); for (var i = 0; i < els.length; i++) { els[i].addEventListener('click', handler, false) }
2exbekwf3#
可以按如下方式设置css属性:
this.style.color = "red";
ejk8hzay4#
较短版本
[].forEach.call(document.querySelectorAll('.black'), function(el) { el.addEventListener('click', function() { el.style.color="red"; }) })
4条答案
按热度按时间p3rjfoxz1#
x一个一个一个一个x一个一个二个x
6fe3ivhb2#
没有
$(this)
的纯javascript等价物,因为$()
返回一个jQuery对象......相反,您必须使用纯javascript构造来执行相同的操作,如x一个一个一个一个x一个一个二个x
2exbekwf3#
可以按如下方式设置css属性:
ejk8hzay4#
较短版本