jQuery与原生js在点击事件上的区别

Posted Rose✿留白ق೨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery与原生js在点击事件上的区别相关的知识,希望对你有一定的参考价值。

1、jQuery的点击事件

//$()是jquery的选择器
let star = $(".bi-star");

//click()是jquery的事件
star.click(function () {
    // hasClass()、removeClass()和addClass()是jquery的方法
    if(star.hasClass('bi-star')){
        star.removeClass('bi-star').addClass('bi-star-fill');
    }else if(star.hasClass('bi-star-fill')){
        star.removeClass('bi-star-fill').addClass('bi-star');
    }
});

2、原生js的点击事件
1)方式一:

let star = document.querySelector(".bi-star");

star.addEventListener("click",toggle);

function toggle() {
    star.style.color = "red";
}

2)方式二:

let star = document.querySelector(".bi-star");

star.onclick = function () {
    star.style.color = "red";
}

3、注意
两者之间在标签的获取和事件的处理上不同,不可混合使用。
以下是错误示范

//$()是jquery的选择器
let star = $(".bi-star");

star.onclick = function(){
    if(star.hasClass('bi-star')){
        star.removeClass('bi-star').addClass('bi-star-fill');
    }else if(star.hasClass('bi-star-fill')){
        star.removeClass('bi-star-fill').addClass('bi-star');
    }
}

onclick()不是jQuery的方法。

读者可参考【学习笔记】jQuery

以上是关于jQuery与原生js在点击事件上的区别的主要内容,如果未能解决你的问题,请参考以下文章

原生js如何绑定a连接点击事件?

jQuery学习— jQuery的ready事件和原生JS的load事件的区别

jQuery中click和onclick的区别

js原生ajax与jquery的ajax的用法区别

js 原生事件委托

jquery on()绑定的点击事件在js动态新添加的元素上无效,请问为啥