我如何通过JavaScript/JQuery添加一个类到一个元素中,当点击事件发生时对元素进行样式化?

d5vmydt9  于 2023-06-28  发布在  Java
关注(0)|答案(2)|浏览(147)

enter image description hereenter image description hereyour textenter image description here
尝试添加一个在单击操作发生时预设置样式的类。
enter image description here
如何使用JavaScript/JQuery为单击的元素添加line-through样式?

2admgd59

2admgd591#

您可以将www.example.com替换e.target为您试图更改的任何元素。另外,如果不想在重复单击时更改样式,可以简单地使用addClass或removeClass

$('#clickme').on('click', function(e){

    $(e.target).toggleClass('stuff');

});
mspsb9vt

mspsb9vt2#

如果你愿意,这里有一个非jQuery的解决方案。
假设有问题的元素是<li>类型的元素(如果不是,只需将'li'选择器替换为您需要的选择器):

// get all elements on which you would like to set 'click' event listeners
const listItems = document.querySelectorAll('li');

// add 'click' event listeners to your elements
listItems.forEach((li) => {
    li.addEventListener('click', function() {
        if (li.classList.contains('myClass')) {
            li.classList.remove('check');
        }
        else {
            li.classList.add('check');
        }        
    })
});

类似地,如前所述,如果您只想添加类而不想在后续单击时删除它,只需将整个if else语句替换为li.classList.add('check');

相关问题