选择器

基本选择器: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总结(来自于一个讲师的总结)的更多相关文章

  1. 基于JQuery.timer插件实现一个计时器

    基于JQuery.timer插件实现一个计时器,需要的朋友可以参考下.   先去官网下载jQuery Timers插件 ,然后引用到html中.这里是1.2 version 复制代码代码如下: < ...

  2. 【jQuery插件】用jQuery Masonry快速构建一个pinterest网站布局(转)

    [jQuery插件]用jQuery Masonry快速构建一个pinterest网站布局 时间:2011年03月21日作者:愚人码头查看次数:29,744 views评论次数:25条评论 前段时间领导 ...

  3. jquery用div模拟一个下拉列表框

    原文 jquery用div模拟一个下拉列表框 今天分享一个用我自己用jquery写的,用div模拟下拉列表select,这个效果网上有很多,但是写一个有自己思路的代码效果,更有成就感,先看截图: 自我 ...

  4. vue setTimeout用法 jquery滚动到某一个div的底部

    //vue 中setTimeOut用法 var $this = this; setTimeout(function(){ $this.goEnd() }, 10); goEnd:function(){ ...

  5. 使用jQuery和CSS3实现一个数字时钟

    点击进入更详细教程及源码下载     在线演示 我们经常会在网站中看见一个时钟的效果.今天向大家分享一个使用jQuery和CSS3实现一个数字时钟教程. http://www.html5cn.org/ ...

  6. jQuery 是javascript的一个库(常用插件、处理器)

    jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery就是javascript的一个库,把我 ...

  7. jquery and js 判断一个元素是否存在

    一.javascript中判断一个元素是否存在 if(document.getElementById('example')){ // do sth } 二.jquery中判断一个元素是否存在 < ...

  8. (jQuery||Zepto).extend 的一个小问题

    最近一直在搞移动端,也由于自己对jQuery比较熟悉,再加上Zepto提供了跟jQuery一样的API,所以就选择了Zepto作为开发框架. 由于是移动端开发,所以也应用了一些ES5新增的API,比如 ...

  9. jQuery为啥要提供一个load()方法?

    上午的时候,找个闲暇事件整理之前整理的一些关于jQuery的东西,看到了一个之前做的jQuery的$(document).ready()与window.onload()方法的比較. 上面两个方法最重要 ...

随机推荐

  1. JVM菜鸟进阶高手之路十三(等你来战!!!)

    转载请注明原创出处,谢谢! 前几天有个朋友问了我个问题,下面给大家分享下,希望大家积极在评论区进行评论留言,等你来战!!! 先来个趣味题,热身下,引出后面的jvm题目. 地上的影子是那个人的? 地上的 ...

  2. linux命令行下svn常用命令

    linux命令行下svn常用命令 1. 将文件checkout到本地目录 1 #path是服务器上的目录 2 svn checkout path 3 4 #示例 5 svn checkout svn: ...

  3. github 项目绑定自己的域名

    上周脑子发热申请了自己的一个域名.本想搞一个自己的网站,后来囊中羞涩,数据库,服务器..买不起了,只买个域名,发现啥也搞不成.后来突然想到了不行找个东西映射到这个域名上吧,就想到了github,之前也 ...

  4. 【工具】Spring项目转化Spring Web项目插件

    前言 源于前一篇博文中提到,将Spring项目转化为Spring Web项目,发现添加项目文件和修改pom.xml文件等都是手动完成的,心想着开发一个Idea插件来自动化完成上面的过程,实现一键转化. ...

  5. LeetCode 289. Game of Life (生命游戏)

    According to the Wikipedia's article: "The Game of Life, also known simply as Life, is a cellul ...

  6. 『实践』Yalmip建模+Cplex类求解

    Yalmip建模+Cplex类求解 一.缘由 Yalmip只能设置部分Cplex的参数,所以需要调用Cplex类.而且optimize是Yalmip提供的常用函数,但此函数的返回结果参数有限. 图1 ...

  7. 记录下Webapi签名机制

    首先,写这篇文章的原因是因为最近某一个项目中的接口被人为调用了,导致了数据库数据被串改.虽然是内部人无意点的,但还是引起了我的担忧,所有整理了下关于Webapi的相关签名机制. 一.我们在开发接口时, ...

  8. css设置黑体宋体等(转)

    代码如下: .selector{ font-family:"Microsoft YaHei",微软雅黑,"MicrosoftJhengHei",华文细黑,STH ...

  9. AngularJS学习篇(十八)

    AngularJS API AngularJS 全局 API 用于执行常见任务的 JavaScript 函数集合,如: 比较对象 迭代对象 转换对象 全局 API 函数使用 angular 对象进行访 ...

  10. URLs对象 blob URL

    把指向数据的URL保存到file或者blob对象里,好处就是不需要先文件读取内容然后才能用.   function createObjectURL(blob){if (window.URL){retu ...