微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery对象和DOM对象的区别

jQuery 对象和 DOM 对象是完全不一样的,下面我们先来看一个简单的例子。

举例:
<!DOCTYPE html>
<html>
<head>
    <Meta charset="utf-8" />
    <title></title>
    <script src="js/jquery-1.12.4.min.js"></script>
    <script>
        $(function () {
            $("div").innerText = "C语言中文网";
        })
    </script>
</head>
<body>
    <div></div>
</body>
</html>
预览效果如图 1 所示。
页面没有内容
图 1:页面没有内容

咦,怎么回事?$("div").innerText不是用于设置 div 元素内部文本内容的吗?为什么页面没有内容呢?

其实$("div")获取的是一个 jQuery 对象,而 innerText 却是 DOM 对象的属性。jQuery 对象与 DOM 对象是两个完全不同的对象,很多初学者容易忽略这一点。我们把 jQuery 对象比作“张三”,把 DOM 对象比作“李四”,那么 innerText 就是“李四的儿子”。张三(jQuery)怎么可以随便就把李四的儿子(innerText)当成自己的儿子来使唤呢。

小伙伴们一定要记住,如果你获取的是 jQuery 对象,就只能使用 jQuery 的方法;如果你获取的是 DOM 对象,就只能使用 DOM 方法(即原生 JavaScript 方法),两者是不能混用的。

因此,对于上面这个例子,正确的做法有两种:
//方法1:使用jQuery
$("div").text("C语言中文网")

//方法2:使用DOM
var oDiv = document.getElementsByTagName("div")[0];
oDiv.innerText="C语言中文网";
总而言之,凡是通过$()获取到的都是 jQuery 对象,必须使用 jQuery 的方法

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐