jQuery
来源:互联网 发布:linux fork函数 编辑:程序博客网 时间:2024/05/21 11:21
一、jQuery 简介
(1)jQuery 是一个 JavaScript 库。jQuery 极大地简化了 JavaScript 编程,jQuery 是继 Prototype 之后又一个优秀的 JavaScript 库。jQuery 库可以通过一行简单的标记被添加到网页中。它是轻量级的js库 ,它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+),jQuery2.0及后续版本将不再支持IE6/7/8浏览器。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页面保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。
(2)jQuery 理念: 写得少, 做得多. 优势如下:
轻量级
强大的选择器
出色的 DOM 操作的封装
可靠的事件处理机制
完善的 Ajax
出色的浏览器兼容性
链式操作方式
二、jQuery语法
(1)jQuery 语法是为 HTML 元素的选取编制的,可以对元素执行某些操作。
基础语法是:$(selector).action()
- 美元符号定义 jQuery
- 选择符(selector)“查询”和“查找” HTML 元素
- jQuery 的 action() 执行对元素的操作
示例
$(this).hide() - 隐藏当前元素
$("p").hide() - 隐藏所有段落
$(".test").hide() - 隐藏所有 class="test" 的所有元素
$("#test").hide() - 隐藏所有 id="test" 的元素
提示:jQuery 使用的语法是 XPath 与 CSS 选择器语法的组合。(2)当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。
在DOM加载完成时运行的代码
$(document).ready(function(){ // 在这里写你的代码...});
或
$(function(){ // 在这里写你的代码...});
(3)DOM 对象和 jQuery 对象的相互转换
例:
<!DOCTYPE html><html> <head> <title>jquery2.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--><script type="text/javascript" src="jquery.js"></script>//导入jquery.js文件<script type="text/javascript">/* * 怎么获取DOM对象 id * 怎么获取jQuery对象 id *$(document).ready(function(){var c=document.getElementById("c");//c.innerHTML="<h1>document1</h1>";var $c=$("#c");$c.html("<h1>JQUERY1</h1>");});*///把DOM对象转换成jQuery对象/*$(document).ready(function(){var c=document.getElementById("c");var $c=$(c);$c.html("<h1>JQUERY22</h1>");});*///怎么把jquery对象转化成 DOM对象$(document).ready(function(){//alert("----------------------2");var $c=$("#c");//var c=$c[0];// jQuery 对象是一个数组对象var c=$c.get(0);c.innerHTML="<h1>document3</h1>";});</script> </head> <body> <div id="c"></div> </body></html>
三、JQuery选择器
(1)jQuery 元素选择器
jQuery 使用 CSS 选择器来选取 HTML 元素。
$("p") 选取 <p> 元素。
$("p.intro") 选取所有 class="intro" 的 <p> 元素。
$("p#demo") 选取所有 id="demo" 的 <p> 元素。
(2)jQuery 属性选择器
jQuery 使用 XPath 表达式来选择带有给定属性的元素。
$("[href]") 选取所有带有 href 属性的元素。
$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。
$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。
$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。
(3)层次选择器
如果想通过 DOM 元素之间的层次关系来获取特定元素, 例如后代元素, 子元素, 相邻元素, 兄弟元素等, 则需要使用层次选择器.
例:
<!DOCTYPE html><html><head><title>jquery02.html</title><meta name="keywords" content="keyword1,keyword2,keyword3"><meta name="description" content="this is my page"><meta name="content-type" content="text/html; charset=UTF-8"><!--<link rel="stylesheet" type="text/css" href="./styles.css">--><!-- 引入js库文件 --><script type="text/javascript" src="./js/jquery-2.0.3.min.js"></script><script type="text/javascript">$(document).ready(function(){ //在给定的父元素下匹配所有的子元素 $("form>input").css("border-color","red");});</script></head><body><form><label>Name:</label> <input name="name"/><fieldset><label>Newsletter:</label> <input name="newsletter" /></fieldset></form><input name="none" /></body></html>
注意: (“prev ~ div”) 选择器只能选择 “# prev ” 元素后面的同辈元素; 而 jQuery 中的方法 siblings() 与前后位置无关, 只要是同辈节点就可以选取
(4)过滤选择器主要是通过特定的过滤规则来筛选出所需的 DOM 元素, 该选择器都以 “:” 开头
基本过滤选择器:
内容过滤选择器:
可见性过滤选择器:
子元素过滤选择器:nth-child(),first-child(),last-child(),only-child();
nth-child() 选择器详解如下:
(1) :nth-child(even/odd): 能选取每个父元素下的索引值为偶(奇)数的元素
(2):nth-child(2): 能选取每个父元素下的索引值为 2 的元素
(3):nth-child(3n): 能选取每个父元素下的索引值是 3 的倍数 的元素
(3):nth-child(3n + 1): 能选取每个父元素下的索引值是 3n + 1的元素
四、表单对象属性过滤选择器
案例:
<!DOCTYPE html><html><head><title>MyHtml.html</title><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="this is my page"><meta http-equiv="content-type" content="text/html; charset=UTF-8"><!--<link rel="stylesheet" type="text/css" href="./styles.css">--><script type="text/javascript" src="./js/1.js"></script><script type="text/javascript">$(document).ready(function() {$("tbody>tr:even").css("background-color","green"); $("tbody>tr:odd").css("background-color","red"); var color; $("tbody>tr").hover(function(){ color=$(this).css("background-color"); $(this).css("background-color","yellow"); },function(){ $(this).css("background-color",color); }); });</script></head><body><table><tr><td>第一行</td><td>第一行</td></tr><tr><td>第一行</td><td>第一行</td></tr><tr><td>第一行</td><td>第一行</td></tr><tr><td>第一行</td><td>第一行</td></tr><tr><td>第一行</td><td>第一行</td></tr><tr><td>第一行</td><td>第一行</td></tr><tr><td>第一行</td><td>第一行</td></tr></table></body></html>
五、下载 jQuery
有两个版本的 jQuery 可供下载:
Production version - 用于实际的网站中,已被精简和压缩。
Development version - 用于测试和开发(未压缩,是可读的代码)
这两个版本都可以从 jQuery.com 下载。
六、小案例
<!DOCTYPE html><html><head><title>MyHtml.html</title><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="this is my page"><meta http-equiv="content-type" content="text/html; charset=UTF-8"><!--<link rel="stylesheet" type="text/css" href="./styles.css">--><script type="text/javascript" src="./js/1.js"></script><script type="text/javascript">$(document).ready(function() {$("input[type='button']").click(function() { alert($("input[type='checkbox']:checked").size());});});</script></head><body><form action=""><input type="checkbox" value="X" />X <input type="checkbox" value="Y" />Y<input type="checkbox" />Z <input type="checkbox" />D <inputtype="checkbox" />E <input type="button" value="选中的个数" /></form></body></html>
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQuery
- JQUERY
- jquery
- jQuery
- jquery
- jquery
- [解决]Marshalling Error: class XXX nor any of its super class is known to this context
- db2错误笔记
- assert()函数用法总结
- java System类
- 二分查找
- jQuery
- OpenCV(3)-视频播放控制
- Eclipse + ndk+ cocos2dx 调试Cocos2dx 程序
- 软件工程实验报告 二
- 货币系统
- ASP.net--Session时间设置
- codeforces 371D
- JAVA视频笔记(day12)
- 百度地图定位SDK错误码error code 162解决办法以及定位SDKjava.lang.noclassdeffounderror