JS和jQuery用法区别
JS和jQuery用法区别
外观区别
jQuery与JS最直观的区别就是外观上jQuery对象比js对象多了"$()"。
查找元素
js方法:
var a = document.getElementById("id名"); 返回一个对象
var a = document.getElementsByClassName("class名"); 返回一个对象数组
var a = document.getElementsByTagName("标签名"); 返回一个对象数组
var a = document.getElementsByName("name名"); 返回带有指定名称的对象的集合。
Jquery方法:
var a = $("#id名");
var a = $(".class名");
var a = $("标签名");
var a = $("[属性名=属性值]");
操作标签
js:
classList.add("类名");
classList.remove("类名");
classList.contains(cls) 存在返回true,否则返回false
classList.toggle(cls) 存在就删除,否则添加
jquery:
$("div").addClass("a1") 添加类名
$("div").removeClass("a1") 移除
$("div").hasClass("a1")
$("div").toggleClass("a1")
操作内容
js方法:
(1).非表单元素:
a.innerText; 获取文本
a.innerHTML; 获取HTML代码
(2).表单元素:
a.value; 获取
a.value="hello"; 赋值
Jquery方法:
(1).非表单元素:
a.text(); //取得第一个匹配元素
a.text("bbbbb");
a.html(); //取得第一个匹配元素当前的html内容
a.html("<div class="a"></div>") // 覆盖所有匹配元素的html内容
(2).表单元素:
a.val();无参数是取值,有参数是赋值。
操作属性
JS里面用来操作属性的方法:
div.setAttribute("","");——设置属性、修改属性
div.removeAttribute("");——移除属性,引号里面写一个属性名
div.getAttribute();——获取属性
jQuery里面用来操作属性的方法:
自定义属性:
添加属性:div.attr({k1: v1, k2:v2});——给这个attr方法加入参数,属性名叫做test,属性的值是aa。
移除属性:div.removeAttr("test");——移除test这条属性。
获取属性:div.attr("test");——在attr方法里面直接写入一个属性的名就可以了。
------------------------------------------------------------------------
固有属性:
a.prop("属性名","属性值"); 添加属性
a.removeProp("属性名"); 删除属性
alert(a.prop("属性名")); 获取属性
a.prop("checked",true);
alert(a.prop("checked")); 选择点击事件
操作位置
js:
offsetLeft、offsetTop属性:只可获取,不可设置(类似jQuery的position()方法)
style.left、style.top:既可设置,也可获取。
jquery:
position() 方法:只能获取,不能设置
offset()方法:既能获取,也能设置。获取和设置元素相对于文档的偏移量
scrollLeft()、scrollTop(),滚动方法:既能获取,也能设置
$(element).scrollLeft(200); //设置元素滚动的left值
操作样式
JS里面操作样式的关键字是style。
例:
div.style.backgroundColor= "red";
把这个div的背景色设置成为了红色。
jQuery里面操作样式的关键字是css。
例:
div.css("background-color","yellow");
把这个div的背景色变为黄色,在这里CSS里面所有的样式和css样式表里面的样式是一模一样的没有任何变化。
注意:
JS操作样式的方法只能获取内联样式,不能取内嵌的和外部的。
jQuery操作样式的方法可以是内联的也可以是内嵌的。
事件
js:
方式一:
<div id="d1" onclick="changeColor(this);">点我</div>
<script>
function changeColor(ths) {
ths.style.backgroundColor="green";
}
</script>
方式二:
<div id="d2">点我</div>
<script>
var divEle2 = document.getElementById("d2");
divEle2.onclick=function () {
this.innerText="呵呵";
}
</script>
jQuery:
<input type="button" id="mybutton" value="点我">
<script>
$(function(){
$("#mybutton").on("click",function(e){
alert(e.type)
//在触发该事件的时候,系统会给传给你这个参数,他包含了触发该事件的一些信息
//这里e指代event
})
})
</script>
JS和jQuery用法区别的更多相关文章
- jQuery (js 和 jQuery 的区别)
js 和 jQuery 的区别 主要体现在Dom操作 (jq代表我找到的元素对象)找元素: js:document.get... jquery: $(选择器)设定:jq 是jquery对 ...
- onload事件与ready事件的区别,原生js与jquery的区别
onload事件与ready事件分别是原生js与jquery的入口函数 原生js入口函数写法: window.onload=function(){ } jquery入口函数写法: $(document ...
- 原生JS和JQuery的区别
1.原生js和jQuery的入口函数加载模式不同 原生js等页面dom加载完成并且图片等资源也加载完成之后才会执行: jQuery则是等页面dom加载完成执行,不会等图片等资源也加载完成: (也就是说 ...
- JS和JQUERY的区别
①.根据ID取元素 { JS:取到的是一个DOM对象. 例:var div = document.getElementByID("one"); JQUERY:取到的是一个JQUER ...
- js与jQuery的区别——每日一记录
js是一种脚本语言,jQuery是在他基础上的一种框架
- 原生js与jquery的区别
1.选择器: js: $('.car_img_con img')[0]; var jsObj = document.getElementsByClassName('sel_index_block')[ ...
- js与jquery的区别
var html = $('<a target="_blank" href="' + adCompContent.clickURL + '">< ...
- JS与Jquery区别
很多人对JS和JQuery很容易搞混淆,今天我们就相比学习下: 加载区别: var myfunction(){}; JS:1.window.onload=function(){} 2.<body ...
- offsetWidth、clientWidth、width、scrollWidth区别及js与jQuery获取的方式
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
随机推荐
- javascript两个数组内容合并
需求: ,,]; ,,]; 最终结果: [,,,,,] 代码: Array.prototype.addAll= function(arr) { this.push.apply(this, arr); ...
- Excel导入工具类
项目需要从Excel导入数据,然后插入到数据库对应表中.设计了一个导入工具类,导入数据和导入结果如下图示: poi jar版本采用的3.15 导入工具类实现如下: package com.alphaj ...
- npm install --save react-native-device-info报错
报错截图如下: 把react-native-device-info删了再添加还是这样,后面使用yarn就成功了. 然后发现会报错,这里估计是Xcode 9的bug,你只要确保以下显示就可以了.没有自己 ...
- 深入理解Attention机制
要了解深度学习中的注意力模型,就不得不先谈Encoder-Decoder框架,因为目前大多数注意力模型附着在Encoder-Decoder框架下,当然,其实注意力模型可以看作一种通用的思想,本身并不依 ...
- 【ARM-Linux开发】wubi.exe安装Ubuntu14.04出现为/检查磁盘时发生严重错误的解决方法
原文:http://jingyan.baidu.com/article/0aa22375bbffbe88cc0d6419.html 我写过一篇叫做 如何硬盘装麒麟系统 的经验,介绍了如何不使用优盘的情 ...
- docker国内镜像加速
在/etc/docker/daemon.json中添加内容: { "registry-mirrors": ["https://registry.docker-cn.c ...
- poj3449(判断直线相交)
题目链接:https://vjudge.net/problem/POJ-3449 题意:给出若干几何体,判断每个几何体与其它几何体的相交情况,并依次输出. 思路: 首先要知道的是根据正方形对角线的两个 ...
- Django生成数据表时报错
Django生成数据表时报错 WARNINGS: ?: (mysql.W002) MySQL Strict Mode is not set for database connection 'defau ...
- Design HashSet
Design a HashSet without using any built-in hash table libraries. To be specific, your design should ...
- 1.5JdbcTmeplates、Jpa、Mybatis、beatlsql、Druid的使用
Spring boot 连接数据库整合 -- create table `account`DROP TABLE `account` IF EXISTSCREATE TABLE `account` ( ...