jQuery 是一套JavaScript脚本库,注意 jQuery 是脚本库,而不是脚本框架。"库"不等于"框架"。jQuery 并不能帮助我们解决脚本的引用管理和功能管理,这些都是脚本框架要做的事。

脚本库能够帮助我们完成编码逻辑,实现业务功能。使用 jQuery 将极大的提高编写javascript代码的效率, 让写出来的代码更加优雅, 更加健壮。

使用 jQuery 的这些功能函数,能够帮助我们快速完成各种功能,而且会让我们的代码异常简洁。

javascript脚本在不同浏览器的兼容性一直是 Web 开发人员的噩梦,比如在 jQuery 中就通过统一event对象,让我们可以在所有浏览器中使用event.target获取事件对象。

总结一下,jQuery封装了JavaScript + DOM,可以写的更少做的更多。本文仅对常用内容做一个总结,方便日后把相关知识点快速捡起来。

jQuery语法基本格式:$(selector).action()

链式编程

jQuery速查表

一、选择器(selector)

1、基本选择器

#id
element
.class
* 包含body
selector1,selector2,selectorN 并列选择,组合 $("p").css("color","red")
$("#div1").text("it works")
$(".div2").css("background","yellow")

2、层级选择器

ancestor descendant     所有后代
parent > child 只有儿子
prev + next 后面紧邻的下一个
prev ~ siblings 后面所有的兄弟同辈

3、基本筛选器

  • 针对索引进行筛选
:first      第一个
:even 索引为偶数
:odd 索引为奇数
:eq(index) 索引等于
:gt(index) 索引大于
:lt(index) 索引小于 $("li:first") $("li:even")
$("li:eq(2)") $("li:gt(1)")

其他

:not(selector)  非
:header
:focus

针对内容进行筛选

:contains(text)

$("div:contains('moumou')")

:empty              选择内容为空的

:has(selector)      如包含P标签

$("div:has(p)").addClass("test");
  • 针对属性进行筛选----重要常用
[attribute]             也可以自定义属性
[attribute=value]
[attr1][attr2][attr3] 多个属性并列 <div id="div1" selfdefine="moumou"/> $("div[selfdefine]") $("div[id='div1']")
  • 针对表单进行筛选
:input
:checkbox $("input")
等价于
$(":input") $("[type='text']")
等价于
$(":text") $("input[type='checkbox']")
等价于
$(":checkbox")

针对表单对象属性筛选

:enabled
:disabled 禁用标签
:checked
:selected $("input:checked")
$("select option:selected")

二、筛选器

过滤筛选器

\\通过索引过滤
eq(index|-index)
first()
last() hasClass(class) $("p:eq(1)").css("fontSize","30px")
$("p").eq(1).css("fontSize","30px")
//优势后者不需要字符串拼接

查找筛选器

children([expr])        只有儿子,没有孙子
find(e|o|e) 所有后代 $("div").children(".test") $("div").find(".test") next([expr]) 紧邻的下一个
nextAll([expr]) 下面的所有满足条件的集合
nextUntil([e|e][,f]) 到**为止 $(".test").next() $(".test").nextAll() $(".test").nextUntil() prev([expr]) 紧邻的上一个
prevall([expr])
prevUntil([e|e][,f]) $("div").prev() $("div").prevAll() $("div").prevUntil() parent([expr]) 父亲
parents([expr]) 父亲爷爷等祖先
parentsUntil([e|e][,f]) $(".test").parent() $(".test").parents() $(".test").parentUntil() siblings([expr]) 后面的兄弟 $("div").siblings()

三、操作元素(action)

1、 属性操作

//HTML代码/文本/值
$("p").text()
$("p").html()
$(":checkbox").val() $(".test").attr("attr")
$(".test").attr("attr","value") $(".test").attr("checked","checked")
$(":checkbox").removeAttr("checked") $(".test").prop("checked",true) $(".test").addClass("hide")
$(".test").removeClass("hide")

取消全选的实例


<button onclick="selectAll();">全选</button>
<button onclick="cancel();">取消</button>
<button onclick="reverse();">反选</button>
<table border="1">
<tr>
<td><input type="checkbox"></td>
<td>11111</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>11111</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>11111</td>
</tr>
</table> <script src="jquery-1.8.2.js"></script>
<script>
function selectAll() {
$("table :checkbox").prop("checked",true)
}
function cancel() {
$("table :checkbox").prop("checked",false)
}
function reverse() {
$("table :checkbox").each(function(){
if ($(this).prop("checked")){
$(this).prop("checked",false)
}
else {
$(this).prop("checked",true)
}
})
}
</script>

each 函数需要注意的问题:

// each return 退出与外层函数无关
// each return false 提示each退出
function f1(){
var li=[11,22,23,44]
//x,y索引和值
$.each(li,function (x,y) {
console.log(y);
if (x == 1){
return false;
}
});
return
console.log("ok");
}

2、CSS操作

(样式) css("{color:'red',backgroud:'blue'}")

(位置) offset() position() scrollTop() scrollLeft()

(尺寸) height() width()

 //scrollTop距离顶部的距离
window.onscroll=function(){
var current=$(window).scrollTop();
console.log(current)
}

3、文档处理

内部插入

append()
appendTo()
$("#c1").append("<b>hello</b>")
$("p").appendTo("div") prepend()
prependTo()

外部插入

before()        insertBefore()
after insertAfter()
replaceWith() 替换
remove() 删除标签
empty() 清空内容
clone() 复制某标签

4、事件

整个文档拓扑结构加载再执行js代码

// 所有函数放入其中,需要等待整个文档加载完,避免找不到
$(document).ready(function(){...})
$(function(){...})

绑定事件

//js中的写法
<button class="result" onclick="show(this)"></button>
function show(self){
self.lalalala;
} //jQuery的写法
$(".result").click(function(this){
this.lalalala;
}) $("p").click(function(){}) $("p").bind("click",function(){}) //用的时候再绑定事件 事件委托
$("ul").delegate("li","click",function(){})

jQuery从入门到忘记的更多相关文章

  1. 从零开始学习jQuery (一) 入门篇

    本系列文章导航 从零开始学习jQuery (一) 入门篇 一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些 ...

  2. JQuery Mobile入门——设置后退按钮文字(转)

    http://www.tuicool.com/articles/AZnYVz JQuery Mobile入门——设置后退按钮文字 时间 2013-01-09 20:24:28  CSDN博客原文  h ...

  3. 极客技术专题【007期】:jQuery初学者入门 - jQuery Event

    日期:2013-8-19  来源:GBin1.com 技术专题介绍 专题:jQuery初学者入门[第三讲:jQuery Event] 分享人:极客标签技术编辑 -Lana (请站内关注分享人) 授课时 ...

  4. jQuery Mobile 入门基础教程

    jQuery Mobile是jQuery在手机上和平板设备上的版本.jQuery Mobile 不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架. jQue ...

  5. jQuery的入门与简介

    jQuery的入门与简介<思维导图>   <初学者请各位高手指点指点> jQuery是继Prototype之后又一个优秀的JavaScript库,在JavaScript基础上我 ...

  6. jQuery UI 入门之实用实例分享

    jQuery UI 入门 jQuery UI 简介 jQuery UI 是一个建立在 jQuery JavaScript 库上的小部件和交互库,您可以使用它创建高度交互的 Web 应用程序.无论您是创 ...

  7. jQuery UI 入门之实用实例

    jQuery UI 入门 jQuery UI 简介 jQuery UI 是一个建立在 jQuery JavaScript 库上的小部件和交互库,您可以使用它创建高度交互的 Web 应用程序.无论您是创 ...

  8. 第一百九十一节,jQuery EasyUI 入门

    jQuery EasyUI 入门 学习要点: 1.什么是 jQuery EasyUI 2.学习 jQuery EasyUI 的条件 3.jQuery EasyUI 的功能和优势 4.其他的 UI 插件 ...

  9. day 48 jQuery快速入门

    jQuery快速入门   jQuery jQuery介绍 1.jQuery是一个轻量级的.兼容多浏览器的JavaScript库. 2.jQuery使用户能够更方便地处理HTML Document.Ev ...

随机推荐

  1. 深入tornado中的TCPServer

    1 梳理: 应用层的下一层是传输层,而http协议一般是使用tcp的,所以实现tcp的重要性就不言而喻. 由于tornado中实现了ioloop这个反应器以及iostream这个对连接的异步读写,所以 ...

  2. 使用FileUtils简化你的文件操作

    前言: 在工作当中我们往往遇到很多文件的操作,我们也习惯写一些自己定义的工具类来简化文件操作,其实apache的commons的FileUtils类就是这样一个工具类,使用它能大大的简化我们对文件的操 ...

  3. windows下Python 3.x图形图像处理库PIL的安装

    图像处理是一门应用非常广的技术,而拥有非常丰富第三方扩展库的 Python 当然不会错过这一门盛宴.PIL (Python Imaging Library)是 Python 中最常用的图像处理库,目前 ...

  4. C#操作CAD-初始化、引用dll

    操作cad等方式有很多,比如C,C++,vb.lisp(效率最高,但是语言结构性太差)和C#,因为我等个人习惯和方便等原因,在此讲解一下用C#操作流程,后续会更新操作图层.扩展数据.绘图等操作步骤.当 ...

  5. SG函数和SG定理【详解】

    在介绍SG函数和SG定理之前我们先介绍介绍必胜点与必败点吧. 必胜点和必败点的概念:        P点:必败点,换而言之,就是谁处于此位置,则在双方操作正确的情况下必败.        N点:必胜点 ...

  6. SQL注入攻击[详解]

    SQL注入攻击是黑客对数据库进行攻击的常用手段之一.随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多.但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候, ...

  7. 小K的H5之旅-实战篇(一)

    一.前言 本K在经过两个星期的html和css学习之后,第一次去尝试完成一个网站主页的制作.在四天之后,本K也终于完成了杰瑞教育主页的html和css部分,至于部分涉及js的部分,因为本K还没有学习过 ...

  8. 那些日常琐事(iPhone上的细小提示,大数据分析)

         今天早上蹲坑玩手机的时候,无意间看到了iPhone 给我一些提醒,震惊了我.也许你们会说,没什么大惊小怪的,当然做程序的都知道苹果公司早就记载了我们日常生活中很多数据,只是苹果公司目前还没做 ...

  9. 最近一个刚刚毕业的朋友说,他面试时候,遇到最频繁的css问题就是垂直居中,这里给出几种垂直居中方式!

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 高性能队列Disruptor系列2--浅析Disruptor

    1. Disruptor简单介绍 Disruptor是一个由LMAX开源的Java并发框架.LMAX是一种新型零售金融交易平台,这个系统是建立在 JVM 平台上,核心是一个业务逻辑处理器,它能够在一个 ...