jQuery的核心思想
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>jQuery--jQuery的设计思想1</title>
<link rel="author" href="humans.txt">
<script src="jquery-1.4.1.min.js"></script>
<script type="text/javascript"> /*
1.选择网页元素
1.1 css选择器
-$(document)//选择整个文档
-$("#myId")//选择ID为myId的网页元素
-$('div.myClass')//选择class为myClass的div元素
1.2 jQuery特有的表达式
-$('a:first')//选择网页中第一个a元素
-$('tr:odd')//选择表格的奇数行
-$('div:visible')//选择可见的div元
2.方法函数化
1.1 原生的
-window.onload
-innerHTML
-onclick
1.2 jquery的
-$()
-html()
-click()
3.原生与jquery的关系
3.1 原生、jq可以共存
-$("#div1").html()
-oDiv.innerHTML
3.2 原生、jq不能混用
-$("#div1").innerHTML
-ODIV.html()
4.改变结果集
4.1 强大的过滤器
-$('div').has('p');//选择包含p标签的div标签
-$('div').not('.myClass');//选择class不等于myClass的div元素
-$('div').filter('.myClass');//选择class等于myClass的div元素
4.2 相邻元素查找
-$('div').next('p');//选择div元素后面的第一个p元素
-$('div').parent();//选择div元素的父元素
-$('div').children();//选择div的所有子元素
5.链式操作
$('div').find('h3').eq(2).html('hello');
--找到div元素,选择其中的h3元素,选择第3个h3元素,将它的内容改为Hello jQuery还提供了.end()方法,使得结果集可以后退一步
------>这个就使得我们可以用一个链式操作,写完一整个效果都没有问题。
6.取值与赋值合体
$('h1').html();//html()没有参数,表示取出h1的值
$('h1').html('hello');//html()没有参数Hello,表示对h1进行赋值 .val()
.attr()
.width() 取值是一组中的 第一个元素,赋值是所有的元素
7.元素移形换位
7.1 直接移动该元素
-$('div').insertAfter($('p'));//把div元素移动到 p元素后面
-$('div').appendTo($('p'));//把div元素剪切到p元素的后面
7.2 移动其他元素
-$('p').after($('div'));//把p元素加到div元素前边
-$('div').append($('p'));//把p元素插入到div的里边
区别:操作的元素不同
8.强大的创建
$('#ul').append('<li>aaaa</li>');
===
var oLi = $('<li>');
oLi.html('aaaa');
$("#ul").append(oLi); clone()
9.工具方法(重点)
9.1 构造函数上的方法
-$.each([],function(){})
-$.trim($('div').attr('class'))--去掉class属性的前后空格 解释:$.方法:添加到构造函数,静态方法
9.2 原型上的方法
-$('div').each(function(index,elements){})
index--索引
elements--当前所有元素中正在操作的 demo:
function $(){
$.each = function(){
//构造函数下面的方法:$.each()
}
$.prototype.each = function(){
//原型下面的方法:$('div').each()
}
}
10.事件操作
10.1 独立事件
- click()
- mouseover()
10.2 通用事件
- bind();//同一个对象上,可绑定多个事件
- one();//绑定的事件只可以执行一次
-unbind();//取消
- e:event对象
- pageX等;//鼠标相对于屏幕的坐标,原生中是clientX
- 阻止默认与冒泡;//return false--既可以阻止冒泡又可以阻止默认事件 demo:toggle--循环执行,后面可以接多个函数
$('input').toggle(function(){},function(){},function(){})
hover--$('div').hover(function(){},function(){})
11.运动效果
11.1 常见效果
-.fadeIn();//淡入
-.fadeOut();//淡出
-.slideDown();//向下展开
-.slideUp();//向上卷起
11.2 复杂效果
-.animate();//运动
-.stop();//阻止前面的运动效果,执行当前的运动事件
12.插件机制(plugins)--demo
在JQ的源码上进行拓展,一个个做好的应用
13.UI组件(jQuery UI)
JQ官方提供的功能效果和UI样式
14.手机、社区、论坛 */
</script>
</head>
<body>
</body>
</html>
jQuery的核心思想的更多相关文章
- Vue学习日记(二)——Vue核心思想
前言 Vue.js是一个提供MVVM数据双向绑定的库,其核心思想无非就是: 数据驱动 组件系统 数据驱动 Vue.js 的核心是一个响应的数据绑定系统,它让数据与DOM保持同步非常简单.在使用 jQu ...
- JQuery的核心的一些方法[扒来的]
JQuery的核心的一些方法 each(callback) '就像循环 $("Element").length; ‘元素的个数,是个属性 $("Element" ...
- 《深入理解Spark:核心思想与源码分析》——SparkContext的初始化(叔篇)——TaskScheduler的启动
<深入理解Spark:核心思想与源码分析>一书前言的内容请看链接<深入理解SPARK:核心思想与源码分析>一书正式出版上市 <深入理解Spark:核心思想与源码分析> ...
- 《深入理解Spark:核心思想与源码分析》(前言及第1章)
自己牺牲了7个月的周末和下班空闲时间,通过研究Spark源码和原理,总结整理的<深入理解Spark:核心思想与源码分析>一书现在已经正式出版上市,目前亚马逊.京东.当当.天猫等网站均有销售 ...
- 《深入理解Spark:核心思想与源码分析》(第2章)
<深入理解Spark:核心思想与源码分析>一书前言的内容请看链接<深入理解SPARK:核心思想与源码分析>一书正式出版上市 <深入理解Spark:核心思想与源码分析> ...
- 《深入理解Spark:核心思想与源码分析》一书正式出版上市
自己牺牲了7个月的周末和下班空闲时间,通过研究Spark源码和原理,总结整理的<深入理解Spark:核心思想与源码分析>一书现在已经正式出版上市,目前亚马逊.京东.当当.天猫等网站均有销售 ...
- 《深入理解Spark:核心思想与源码分析》正式出版上市
自己牺牲了7个月的周末和下班空闲时间,通过研究Spark源码和原理,总结整理的<深入理解Spark:核心思想与源码分析>一书现在已经正式出版上市,目前亚马逊.京东.当当.天猫等网站均有销售 ...
- Hibernate核心思想—ORM机制(一)
转:http://blog.csdn.net/wanghuan203/article/details/7566518 hibernate是一个采用ORM(Object/Relation Mapping ...
- hadoop的核心思想
hadoop的核心思想 1.1.1. hadoop的核心思想 Hadoop包括两大核心,分布式存储系统和分布式计算系统. 1.1.1.1. 分布式存储 为什么数据需要存储在分布式的系统中哪,难道单一的 ...
随机推荐
- 全自动Landsat影像温度反演软件开发
许久没有更新遥感类软件开发了,都有点生疏了,这一次我带来了一个老的算法,新的东西, 为什么这么说呢,我们知道Landat8.Landsat5等影像,单个影像去做温度反演,并没有什么太大的难度, 但是呢 ...
- Java NIO: Non-blocking Server 非阻塞网络服务器
本文翻译自 Jakob Jenkov 的 Java NIO: Non-blocking Server ,原文地址:http://tutorials.jenkov.com/java-nio/non-bl ...
- java泛型的作用及其基本概念
一.泛型的基本概念 java与c#一样,都存在泛型的概念,及类型的参数化.java中的泛型是在jdk5.0后出现的,但是java中的泛型与C#中的泛型是有本质区别的,首先从集合类型上来说,java 中 ...
- 详解Linux运维工程师必备技能
张戈大神是腾讯的一名运维,张戈博客也是我接触到第一个 Linux 运维师的博客,最近也在接触 Linux,说到工具,在行外可以说是技能,在行内一般称为工具,就是运维必须要掌握的工具. 我就大概列出这几 ...
- GIT \ SVN 版本管理 git + gitHub
场景1 想删除一个段落,又怕将来想恢复找不回来怎么办?有办法,先把当前文件"另存为--"一个新的Word文件,再接着改,改到一定程度,再"另存为--"一个新 ...
- HDU 1811:Rank of Tetris(并查集+拓扑排序)
http://acm.hdu.edu.cn/showproblem.php?pid=1811 Rank of Tetris Problem Description 自从Lele开发了Rating系 ...
- Nginx+Tomat8负载后,利用Redis实现Tomcat8的session共享
网上相应的文章应该都介绍,这里只特别记录下笔者在实操的过程出现的问题.此文件只针对tomcat 8 版本,之前版本可略过. tomcat 8 中的context.xml文件修改,增加以下配置. Jav ...
- BASE64Encoder及BASE64Decoder的正确用法
一直以来Base64的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder的sun.misc.BASE64Encoder/BASE64Decoder类.这人个类 ...
- 微信小程序 键盘显示短信验证码
1.场景描述: IOS系统 一些APP或者微信小程序在收到短信验证码的时候会在键盘上自动保存验证码信息,当用户点击的时候,会自动赋值到当前所点击的输入框中 2.案例: 2.实现: TIPS:这个功能是 ...
- 齐治运维堡垒机后台存在命令执行漏洞(CNVD-2019-17294)分析
基本信息 引用:https://www.cnvd.org.cn/flaw/show/CNVD-2019-17294 补丁信息:该漏洞的修复补丁已于2019年6月25日发布.如果客户尚未修复该补丁,可联 ...