jquery总结(来自于一个讲师的总结)
选择器
基本选择器:id class 标签 eq()查找具体的列表中的元素:$(‘ul li:eq(n)’).eq(n)
层 :div p,div>p
查找:find 选中元素中再查找子元素,parent查找直接父元素,parents向上查找好几层父 元素
筛选:next()选中当前元素后面的元素条件是:紧跟在当前元素后面
nextAll()选中当前元素后面的所有元素,不管有没有其他元素间隔
Prev和prevAll选中当前元素前面符合条件的元素,使用原理和next相同,
Siblings()在同一父元素下面的同级子元素,括号中不写的话,就是所有同级元素,写上 选择条件,就是符合条件的同级元素
dom元素操作
内部插入元素:
append: 将后面元素作为最后一个子元素插入到前面元素中
$(‘.div1’).append($(‘.img’))
$(‘.div1’).append(‘<img src=”img/1.jpg”/>’)
上面两者的区别:前者是将页面已存在的元素,插入到符合条件的元素中,特点: 只有一个给元素,不会无限制插入,后者是每次触发事件后都插入该标签,无限多 个
appendTo: $(‘.img’).appendTo($(‘.div1’))将前者插入到后者中,作为最后一个子元素
Prepend 将后面元素作为第一个子元素插入到前面元素中,语法格式和append相同
prependTo 语法格式同上
外部插入:
After:在当前选中元素的后面插入同级元素
$(‘.div1’).after($(‘.img’))
insetAfter $(‘.div1’).insetAfter($(‘.img’)),将$(‘.div1’)插入到$(‘.img’)的后面
Before :在当前选中元素的前面插入同级元素
insertBefore $(‘.div1’).insetBefore($(‘.img’)),将$(‘.div1’)插入到$(‘.img’)的前面
事件
绑定事件:on和bind,格式:$(‘div’).on(‘click’,function(){}),此时on的使用方法和功能与bind相同,不能给脚本中后插入的元素绑定事件,解除绑定的方方分别对应off和unbind
如果on的格式为$(‘div’).on(‘click’,’.img’,function(){}),此时on的功能和live、delegate一样,可以给脚本中后插入的元素委托事件。
事件委托:live和delegate解除方式分别对应die 、undelegate
$(‘div’).live(‘click’,’.img’,function(){})
$(‘div’).delegate(’.img’,‘click’,function(){})
注意:解除事件时,括号中不写事件就将绑定元素上所有的绑定事件都解除
常用事件举例:Blur:经常用于表单中的验证,focus,聚焦事件:举例 if($(‘:text’).val==’’){$(this).focus()}
鼠标事件mouseXXXXX,键盘事件keyXXXX,滚动scroll 改变窗口大小resize, 表单提交事件:$(‘form’).submit()
异步请求:Ajax
$.ajax({
Type:’get/post’,
Url:’template/index.php’,
Success:function(data){
Data就是我们请求过来的数据,可以对它进行操作
}
})
封装好的两种方式:get和post
$.get(‘url?name=jack’,function(data){
Data就是我们请求过来的数据,可以对它进行操作
})
$.post(‘url’,{name:’jack’,age:22},function(data){
Data就是我们请求过来的数据,可以对它进行操作
})
动画效果
1.Show()和hide()这两个改变元素的display,显示就是block,隐藏就是none
2.slide:卷帘门,slideUp和slideDown改变的是元素的height值
3.fade:淡入淡出fadeOut和fadeIn 改变元素的opacity=1,淡出时opacity=0;
4.animate:自定义动画:格式:$(‘div’).animate({除了颜色之外的其他样式},1000,function(){})
事件的参数event
event.preventDefault 阻止默认事件
event.stopPropagation();阻止冒泡事件
Event.pageX和event.pageY获取鼠标在当前事件下的坐标,从可视窗口到鼠标的位置
通常可以用来做窗口移动,图片移动效果
Jquery核心部分
所有的操作都基于选中元素的基础上,
1.就是用选择器选中目标元素,
2.确定触发条件:比如鼠标经过、单击、聚焦等等
3.明确想要在该条件下干什么,就是执行语句
Css()和attr()分别针对样式和属性:
举例:
Html部分:
<div class="div1" >
<p>我是段落语句!</p>
<img src=’img/i.jpg’ alt=’one’ title=’img’/>
<div>
Css部分:
.div1{
Color:green;
Line-height:30px;
Cursor:move;
}
Jquery部分:当鼠标单击图片时,将该图片换为2.jpg,并且将鼠标样式改为手的形状
$(‘img’).click(function(){
$(this).attr(‘src’,’img/2.jpg’).css(‘cursor’,’pointer’)
})
脚本中如果有跨事件调用的变量,记住是定义的全局变量,局部变量的作用域有限,只在当前事件范围下使用
获取元素的对应值:
1.css() 获取颜色的值:$(‘div’).css(‘color’); 设置边框:$(‘div img’).css(‘border’,’1px soild red’);
2.Attr() 获取类名:$(‘div’).attr(‘class’) $(‘div’).attr(‘class’,’div2’)
3.Html() 获取选中元素标签之间的所有内容
4.Text() 获取选中标签之间的所有文本,包括子元素中的文本
5.Val() 获取表单的value值,<textarea>标签也是用val()获取
获取元素距离可视界面的距离:
Var x = $(‘div’).offset().left; 包括定位值和外补白的值
Var y = $(‘div’).offset().top;
获取元素的宽高
Var x = $(‘div’).height();
Var x =$(‘div’).width();
outerHeight和innerHeight的区别:前者包括边框,后者不包括边框
scrollTop元素滚动高度:前提条件子元素内容超出父元素的大小,并且父元素被设置了具体宽高,且overflow:scroll
关于定位:
相对父元素定位:relative
绝对定位:相对于上一个设置定位的父元素而言,如果父元素都没有设置定位,该元素 就相对于body进行定位,记住:给绝对定位时,一定要给父元素添加相对定位
绝对定位是脱离文档流:不影响页面其他元素的布局
Float也脱离文档流
脱离文档流的元素设置margin值无效
代码习惯
1)定位要写在最上方,影响元素性质的样式,2.设置宽高3.设置元素内部的样式
2)文件命名,尽量英文定义。
3)类名尽量通俗易懂,言简意赅,前后格式要统一,驼峰形式是imgWrap, 或其他img-wrap
4)不要直接img布局,最好将img放在div中,这样布局稳定符合大众习惯
5)看到有规律一系列的元素,一般是序列表ul
jquery总结(来自于一个讲师的总结)的更多相关文章
- 基于JQuery.timer插件实现一个计时器
基于JQuery.timer插件实现一个计时器,需要的朋友可以参考下. 先去官网下载jQuery Timers插件 ,然后引用到html中.这里是1.2 version 复制代码代码如下: < ...
- 【jQuery插件】用jQuery Masonry快速构建一个pinterest网站布局(转)
[jQuery插件]用jQuery Masonry快速构建一个pinterest网站布局 时间:2011年03月21日作者:愚人码头查看次数:29,744 views评论次数:25条评论 前段时间领导 ...
- jquery用div模拟一个下拉列表框
原文 jquery用div模拟一个下拉列表框 今天分享一个用我自己用jquery写的,用div模拟下拉列表select,这个效果网上有很多,但是写一个有自己思路的代码效果,更有成就感,先看截图: 自我 ...
- vue setTimeout用法 jquery滚动到某一个div的底部
//vue 中setTimeOut用法 var $this = this; setTimeout(function(){ $this.goEnd() }, 10); goEnd:function(){ ...
- 使用jQuery和CSS3实现一个数字时钟
点击进入更详细教程及源码下载 在线演示 我们经常会在网站中看见一个时钟的效果.今天向大家分享一个使用jQuery和CSS3实现一个数字时钟教程. http://www.html5cn.org/ ...
- jQuery 是javascript的一个库(常用插件、处理器)
jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery就是javascript的一个库,把我 ...
- jquery and js 判断一个元素是否存在
一.javascript中判断一个元素是否存在 if(document.getElementById('example')){ // do sth } 二.jquery中判断一个元素是否存在 < ...
- (jQuery||Zepto).extend 的一个小问题
最近一直在搞移动端,也由于自己对jQuery比较熟悉,再加上Zepto提供了跟jQuery一样的API,所以就选择了Zepto作为开发框架. 由于是移动端开发,所以也应用了一些ES5新增的API,比如 ...
- jQuery为啥要提供一个load()方法?
上午的时候,找个闲暇事件整理之前整理的一些关于jQuery的东西,看到了一个之前做的jQuery的$(document).ready()与window.onload()方法的比較. 上面两个方法最重要 ...
随机推荐
- Javascript常见浏览器兼容问题
常见浏览器原生javascript兼容性问题主要分为以下几类: 一.Dom 1.获取HTML元素,兼容所有浏览器方法:document.getElementById("id")以I ...
- (10.23)Java小知识!
---恢复内容开始--- 方法的定义: 一般情况下,定义一个方法包含以下语法: 修饰符 返回值类型 方法名 (参数类型 参数名 , ...){ ... 方法体 ... return 返回值; } 修饰 ...
- IntelliJ IDEA 2016.2激活
激活码 43B4A73YYJ-eyJsaWNlbnNlSWQiOiI0M0I0QTczWVlKIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lI ...
- 【Java学习笔记之三十四】超详解Java多线程基础
前言 多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,所以学好多线程并发编程对我们来说极其重要,下面跟我一起开启本次的学习之旅吧. 正文 线程与进程 1 线程:进程中负责程序执行的 ...
- C 结构体零散知识点
1.结构体无法把自己作为成员,但可以包含指向自己的指针成员 2.定义不完整结构类型(类型,结构,占用空间无法确定,如void指针,声明没有指明数组长度数组)只能使用小标签,即struct struct ...
- Spring源码情操陶冶-AOP之ConfigBeanDefinitionParser解析器
aop-Aspect Oriented Programming,面向切面编程.根据百度百科的解释,其通过预编译方式和运行期动态代理实现程序功能的一种技术.主要目的是为了程序间的解耦,常用于日志记录.事 ...
- [oracle 使用(2)] Oracle的简单使用
1:oracle的服务 oracleservice + sid # 数据库服务 oracleoradb10g_home1listener # 数据库的监听服务. 2:启动本机数据库: 启动oracle ...
- js正则验证特殊字符
js正则验证特殊字符 方案一 var regEn = /[`~!@#$%^&*()_+<>?:"{},.\/;'[\]]/im, regCn = /[·!#¥(--):: ...
- C++开发象棋一 绘制棋盘
这是我要和大家分享的基于C++和MFC开发的一个象棋程序,目的是练习编程实践和大家分享同时希望大家能给出指教. 进入主题 一.棋盘分析 这是我绘制的棋盘,棋盘的组成由9条竖线和10条横线构成.这儿我们 ...
- velocity的基础使用
velocity的基本使用要求:掌握jsp的jstl技术,因为velocity的用法和jstl非常相似.语法上差别不大,但是velocity的示例明显比jstl少,解释也少,所以使用velocity必 ...