[英]Rewriting JS, removing jQuery. $(this) trouble
我正在尝试将此代码重写为原始JS。
$('body')
// change background image
.on('click', '.bgtexture .list li', function() {
var self = $(this);
$('.bgtexture .active').removeClass('active');
self.addClass('active');
$('.start').css('background', 'url("img/masks/'+self.text()+'.png") repeat');
})
// change background image
.on('click', '.bggradient .list li', function() {
var self = $(this),
color = self.text();
$('.bggradient .active').removeClass('active');
self.addClass('active');
$('.gradient').attr('class','gradient').addClass(color);
});
到目前为止,我有:
document.querySelector('.bgtexture .list li').addEventListener('click', function () {
// what would $(this) be in vanilla js?
var self = $(this);
});
香草js中的$(this)是什么?
尝试这种方式:
var elemList=document.querySelectorAll(".bgtexture .list li");
for(var i=0, len=elemList.length; i < len; i++)
{
elemList[i].addEventListener('click', function()
{
//Clicked element
console.log(this);
}, false);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.