簡體   English   中英

重寫JS,刪除jQuery。 $(此)麻煩

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM