之前编码工作,总是在遇到问题后,去百度查找解决方法,这样下来虽然能解决问题,但是知识不是很系统,因此跟着知识点系统的学习,(比如W3C、菜鸟教程等)看完之后如果不做记录,很快将会遗忘,So在学习的同时适当做下笔记,加深印象。
jQuery是轻量级JavaScript 库;如何选取 HTML 元素,以及如何对它们执行类似隐藏、移动以及操作其内容等任务,通过使用 jQuery 应用 JavaScript 效果。
1、jQuery库-特性
-
HTML 元素选取、操作、事件函数、DOM遍历和修改
- CSS 操作
- JavaScript 特效和动画
- AJAX
- Utilities
2、向页面添加jQuery库
<head>
<script type="text/javascript" src="jquery.js"></script>
</head>
注意:使用<script> 标签引用,且位于页面<head> 部分。jQuery 库位于一个 JavaScript 文件中,包含所有 jQuery 函数。在HTML5中<script> 标签中不必使用 type="text/javascript"
3、jQuery语法
基础语法是:
$(selector).action()
- 美元符号定义 jQuery
- 选择符(selector)“查询”和“查找” HTML 元素
- jQuery 的 action() 执行对元素的操作
$(this).hide() - 隐藏当前HTML元素
$("p").hide() - 隐藏所有段落<p>
$(".test").hide() - 隐藏所有 class="test" 的所有元素
$("#test").hide() - 隐藏所有 id="test" 的元素
文档就绪函数:
$(document).ready(function(){
--- jQuery functions go here ----
});
注意:所有 jQuery 函数位于一个 document ready 函数中,防止文档在完全加载(就绪)之前运行 jQuery 代码。
4、jQuery选择器
功能: jQuery 使用 CSS 选择器来选取 HTML 元素。
示例:
$("p") 选取 <p> 元素。
$("p.intro") 选取所有 class="intro" 的 <p> 元素。
$("p#demo") 选取所有 id="demo" 的 <p> 元素。
2)属性选择器
功能:Query 使用 XPath 表达式来选择带有给定属性的元素。
示例:
$("[href]") 选取所有带有 href 属性的元素。
$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。
$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。
$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。
3)CSS选择器
功能:改变 HTML 元素的 CSS 属性。
示例: 下面的例子把所有 p 元素的背景颜色更改为红色:
$("p").css("background-color","red");
5、jQuery事件
由事件“触发”(或“激发”),通常会把 jQuery 代码放到 <head>部分的事件处理方法中:
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").hide();
});
});
</script>
</head>
<body>
<h2>This is a heading</h2>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
<button>Click me</button>
</body>
</html>
当按钮的点击事件被触发时会调用一个函数:隐藏所有 <p> 元素。
单独文件中的函数:目的:网站包含多页面,jQuery函数更易维护,将 jQuery 函数放到独立的 .js 文件中。
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="my_jquery_functions.js"></script>
</head>
当我们在教程中演示 jQuery 时,会将函数直接添加到 <head> 部分中。不过,把它们放到一个单独的文件中会更好,就像这样(通过 src 属性来引用文件)。
名称冲突:
jQuery 使用 $ 符号作为 jQuery 的简介方式。
某些其他 JavaScript 库中的函数(比如 Prototype)同样使用 $ 符号。
jQuery 使用名为 noConflict() 的方法来解决该问题。
var jq=jQuery.noConflict(),帮助您使用自己的名称(比如 jq)来代替 $ 符号。
原则:- 把所有 jQuery 代码置于事件处理函数中
- 把所有事件处理函数置于文档就绪事件处理器中
- 把 jQuery 代码置于单独的 .js 文件中
- 如果存在名称冲突,则重命名 jQuery 库
下面是 jQuery 中事件方法的一些例子:
Event 函数 | 绑定函数至 |
---|---|
$(document).ready(function) | 将函数绑定到文档的就绪事件(当文档完成加载时) |
$(selector).click(function) | 触发或将函数绑定到被选元素的点击事件 |
$(selector).dblclick(function) | 触发或将函数绑定到被选元素的双击事件 |
$(selector).focus(function) | 触发或将函数绑定到被选元素的获得焦点事件 |
$(selector).mouseover(function) | 触发或将函数绑定到被选元素的鼠标悬停事件 |