jQuery中.bind() .live() .delegate() .on()的区别 和 三种方式写光棒事件 动画
地狱的镰刀
bind(type,[data],fn) 为每个匹配元素的特定事件绑定事件处理函数。
- $("a").bind("click",function(){alert("ok");});
live(type,[data],fn) 给所有匹配的元素附加一个事件处理函数,即使这个元素是以后再添加进来的
- $("a").live("click",function(){alert("ok");});
delegate(selector,[type],[data],fn) 指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数
- $("#container").delegate("a","click",function(){alert("ok");})
on(events,[selector],[data],fn) 在选择元素上绑定一个或多个事件的事件处理函数
差别:
.bind()是直接绑定在元素上
.live()则是通过冒泡的方式来绑定到元素上的。更适合列表类型的,绑定到document DOM节点上。和.bind()的优势是支持动态数据。
.delegate()则是更精确的小范围使用事件代理,性能优于.live()
.on()则是最新的1.9版本整合了之前的三种方式的新事件绑定机制
用三种方式写光棒效果
一:js批量注册this的说法
当通过循环的方式注册事件的时候,在匿名函数的方法体中,必须使用this代表当前对象,不能使用数组名[i](对象名)。
js设置样式的两种方案:
1.this.style.属性名=“属性值”;
如果属性名:
background-color--------->backgroundColor
font-size---------->fontSize
2.this.style.cssText="属性名:属性值;font-size:50px"
eg:
- <script type="text/javascript" src="jq/jQuery1.11.1.js"></script>
- <script type="text/javascript">
- //用js的光棒效果
- /* $(function(){
- var hu=document.getElementsByTagName("li");
- for(var i=0;i<hu.length;i++){
- hu[i].onmouseover=function(){
- //js方式设计样式 方式一 this.style.属性名=属性值。
- //this.style.background="red";
- // this.style.fontSize="40px";
- //方式二:this.style.cssText="属性名:属性值"
- this.style.cssText="background:pink;font-size:50px;";
- };
- hu[i].onmouseout=function(){
- //方式一:
- this.style.background="";
- this.style.fontSize="20px";
- //方式二:
- // this.style.cssText="background:;font-size:20px;";
- };
- }
用jq的两种方法:
- //用jq的光棒效果 1.锁定li元素
- $(function(){
- var hu=$("li");
- hu.mouseover(function(){
- $(this).css({"background":"pink","font-size":"50px"});
- }).mouseout(function(){
- this.style.background="";
- this.style.fontSize="20px";
- });
- });
- //hover的光棒效果
- ji.hover(
- function(){
- $(this).css({"background":"pink","font-size":"50px"});
- },function(){
- this.style.background="";
- this.style.fontSize="20px";
- });
复杂动画:
- //复杂动画
- $(function(){
- $("img").animate({width:"90%"},5000)
- .animate({height:"90%"},{queue:false,duration:5000})
- .animate({borderWidth:5},{queue:false,duration:5000});
- });
- </script>
- </head>
- <body>
- <img src="img/1.jpg" style="width:100px; height:100px;display:none;"></img>
- </body>
简单动画:
- <script type="text/javascript" src="jq/jQuery1.11.1.js"></script>
- <script type="text/javascript">
- //简单动画
- $(function(){
- //$("img").show(5000,playDog);
- //$("img").fadeIn(5000,playDog);
- $("img").slideDown(5000,playDog);
- });
- function playDog(){
- alert("will is power");
- }
- </script>
- </head>
- <body>
- <img src="img/1.jpg" style="width:100px; height:100px;display:none;"></img>
- </body>
jQuery中.bind() .live() .delegate() .on()的区别 和 三种方式写光棒事件 动画的更多相关文章
- JavaScript--------------------jQuery中.bind() .live() .delegate() .on()的区别 和 三种方式写光棒事件 动画
bind(type,[data],fn) 为每个匹配元素的特定事件绑定事件处理函数. $("a").bind("click",function(){alert( ...
- jquery中bind,live,delegate,on的区别
这几种方法都是绑定事件用到的,但是他们之间有些差别 bind(type,[data],fn) 为每个匹配元素的特定事件绑定事件处理函数 例如: <ul> <a href=" ...
- 【转】jQuery中.bind() .live() .delegate() .on()的区别
bind(type,[data],fn) 为每个匹配元素的特定事件绑定事件处理函数 $("a").bind("click",function(){alert(& ...
- jQuery中.bind() .live() .delegate() .on()的区别
bind(type,[data],fn) 为每个匹配元素的特定事件绑定事件处理函数 $("a").bind("click",function(){alert(& ...
- jQuery中bind() live() delegate() on() 的区别
实例 bind(type,[data],fn) 为每个匹配元素的特定事件绑定事件处理函数 $("a").bind("click",function(){aler ...
- jQuery中.bind() .live() .delegate() .on()区别
$(selector).bind(event,data,function) $(selector).live(event,data,function)//jquery1.9版本以下支持,jquery1 ...
- jQuery中bind方法和live方法区别解析
Javascript中的事件有它的独特性,有默认的执行事件,例如冒泡就是其中的一个.在很多比较复杂的应用程序中,停止事件的冒泡或捕获在程序开发当中是十分有用的,而在IE中有它的独特方式来阻止事件的冒泡 ...
- 谈 jquery中.band() .live() .delegate() .on()的区别
bind(type,[data],fn) 为每个匹配元素的特定事件绑定事件处理函数 $("a").bind("click",function(){alert(& ...
- 监视EntityFramework中的sql流转你需要知道的三种方式Log,SqlServerProfile, EFProfile
大家在学习entityframework的时候,都知道那linq写的叫一个爽,再也不用区分不同RDMS的sql版本差异了,但是呢,高效率带来了差灵活性,我们 无法控制sql的生成策略,所以必须不要让自 ...
随机推荐
- Insert Select
有三种用法 1.insert values 2.insert select 3.inser exec
- Swift迁入第三方库时的版本错误解决
我的swift的项目用的是swift 2.3的版本,但是用CocoaPods迁入一个第三方:ObjectMapper后,编译会出现这样一个问题: Use Legacy Swift Language V ...
- 3)Java学习笔记:内部类
什么是内部类 内部类是指在一个外部类的内部再定义一个类.内部类作为外部类的一个成员,并且依附于外部类而存在的.内部类可为静态,可用protected和private修饰(而外部类只能使用public和 ...
- datalog
https://en.wikipedia.org/wiki/Datalog http://www.csd.uoc.gr/~hy562/1112_spring/instr_material/WhatYo ...
- 那些年我们一起改过的bug
ORA-01861: 文字与格式字符串不匹配 ORA-00936: 缺失表达式 ORA-01810 格式代码出现两次 ORA-01722: 无效数字 无效的列索引
- 阿里CEO张勇:阿里蚂蚁20亿元扶持开发者
https://bbs.taobao.com/catalog/thread/508895-318032179.htm?spm=a21bo.7724922.8439-0.2.tkjSOl 阿里CEO张勇 ...
- iOS 之 线程和进程
进程是系统调度单位,拥有自己的资源 线程是CPU调度的基本单位 进程的同步机制: 原子操作.信号量机制.自旋锁.分布式系统
- delphi假死线程堵塞解决办法
Delphi的高效不多说... 俗话说:真正的程序员用C语言,聪明的程序员用Delphi,一点都不假,和C++比它比C++更简单,更容易上手,功能丝毫不逊色C++,比起VB,毫无疑问比VB好多了,重要 ...
- KERNEL32相关函数
CALL DWord Ptr [<&KERNEL32.WriteFile>] kernel32.WriteFile 将数据写入一个文件,也可将这个函数应用于对通信设备.管道.套接字 ...
- 封装 INI 文件读写函数
delphi读写ini文件实例 //--两个过程,主要实现:窗体关闭的时候,文件保存界面信息:窗体创建的时候,程序读取文件文件保存的信息. //--首先要uses IniFiles(单元) //--窗 ...