写在前面:
经过系统的学习了原生JS之后,会发现其具有以下三个特点:
1、是一种解释性脚本语言(代码不进行预编译)。
2、主要用来向 HTML 页面添加交互行为。
3、可以直接嵌入 HTML 页面,但写成单独的js文件有利于结构和行为的分离。
而接下来要讲的jQuery 就对原生javascript的一个扩展,封装,就是让javascript更好用,更简单。
换而言之,jquery就是要用更少的代码,漂亮的完成更多的功能。{Write less, Do more!}
1. jQuery 作为 JavaScript 的代码库,自然是使用 JavaScript 语言编写的。
2. jQuery 的代码非常规范,执行效率也很高,是 JavaScript 编码的优秀范例。
3. 很多情只要使用 jQuery 的方法就可以实现大部分的 JavaScript 功能。
所以说,程序员作为一种极懒的物种存在,势必想着要减少不必要的代码劳动量,因此jQuery诞生了。
一、jQuery基础语法
1、适应JQuery、必须要先导入JQuery。x.x.x.js文件。
$(document).ready(function() { //JQuery代码 }); 简写形式如下: $(function(){});
[文档就绪函数&window.onload的区别]
$("#p").click() √ $("#p").onclick = function(){}; ×
解释:
$("<p>这是被插入的p标签</p>").appendTo("#div1");
$("#div1").prepend("<p>这是被插入的p标签</p>");
$("#div1").after("<p>这是被插入的p标签</p>");
$("<p>这是被插入的p标签</p>").insertBefore("#div1");
$("p").wrap("<div></div>");
$("p").wrapAll("<div></div>");
删除元素的父标签
$("#p").unwrap();
$("p").replaceWith("<span>111</span>");
$("<span>111</span>").replaceAll("p");
$("#div1").empty();
$("#div1").remove();
重点 [JS中.cloneNode() 和 JQ中 .clone()区别]
两者都接受传入true/false的参数。
.cloneNode() 不传参数或传入参数false,表示只克隆当前节点,而不克隆子节点。 传入true表示可隆全部子节点。
prop与Attr区别。$("p").toggleClass("selected1");
console.log($("#div1").html());$("#div1").html("<h1>我是新的h1</h1>");
取到或设置元素里面的文字内容,相当于innerText
console.log($("#div1").text());$("#div1").text("<h1>我是新的h1</h1>");
获取或设置 元素的Value值
console.log($("input[type=‘text‘]").val());$("input[type=‘text‘]").val("啧啧啧!");
获取元素的内部宽度。 包括宽高和padding
console.log($("#div1").innerHeight());console.log($("#div1").innerWidth());
获取元素的外部宽高。 包括宽高+padding+border
offset():缺点:绑定的事件无法取消!
var str1 = " 123 ";console.log(str1.trim());
五、JQuery插件 plugin
1、fullpage插件
知识推荐
- 一张图弄明白开源协议-GPL、BSD、MIT、Mozilla、Apache和LGPL 之间的区别
- 提交中文数据乱码问题---web.xml
- Hibernate中@Embedded和@Embeddable注解
- 网页中的无间道1
- Json对象应用
- Markdown(editormd)语法解析成html
- web学习第四天
- 以JQuery的方式封装 cookie 方便调用
- js实现菲波那切数列的两种常用方法
- 浏览器拦截js打开新窗口
- CSS中的浮动和清除浮动
- kbmmw 中XML 操作入门(跨平台,而且可以与JSON,YAML,BSON ?直接互相转换)
- 转:Jquery如何获取某个元素前(后)的文本内容?
- 负载均衡基于Cookie OpenRest+tomcat+php+memcache+Jsp
- 使用浏览器测试Web服务时出现提示“The test form is only available for requests from the local machine.”的解决办法
- POJ1236 Network of Schools【强连通】
- 使用Jmeter进行http接口测试(转载)
- 使用Github上传本地代码