jQuery-事件以及动画
事件:
1、//方法1
$(window).load(function(){
})
window.onload=function(){
}
//方法2
function one(){
alert("one");
}
function two(){
alert("two");
}
(
//这样的执行结果应该是two,因为onload事件只会保存对一个函数的引用
window.onload = one;
window.onload = two;
)
修改为以下格式:
window.onlaod=function(){
one();
two();
}
在jQuery中,还可以这样,jQuery的onlaod事件是可以执行多个函数的
function one(){
alert("one");
}
function two(){
alert("two");
}
$(document).ready(function(){
one();
})
$(document).ready(function(){
two();
})
2、
$(document).ready(function(){
two();
})
可以简写成:
$(function(){
})
或
$().ready(function(){
})
//$()的默认情况下就是document
3、事件绑定:bind(事件类型 ,可选参数(作为event.data属性值传递给事件对象的额外数据对象,处理函数fn)
bind()方法可以多次调用,this引用的是携带相应行为的DOM元素$(this)
方法1:
$(function(){
$("#panel h5.head").bind("click",function(){
if($(this).next().is(":visible")){
$(this).next().hide();
}else{
$(this).next().show();
}
})
})
方法2:
$(function(){
$("#panel h5 .head").bind("mouseover",function(){
$(this).next().show();
}).bind("mouseout",function(){
$(this).next().hide();
})
})
方法3:
$(function(){
$("#panel h5 .head").mouseover(function(){
$(this).next().show();
}).mouseout(function(){
$(this).next().hide();
})
})
4、jQuery有两个合成事件:hover()以及toggle()方法
hover(enter,laeve)
$(function(){
$("#panel h5 .head").hover(function(){
$(this).next().show();
}.function(){
$(this).next().hide();
})
})
5、toggle()方法
方法1:
$(function(){
$("#panel h5 .head").toggle(function(){
$(this).next().show();
},function(){
$(this).next().hide();
})
})
方法2:
//toggle()还有一个作用是切换元素的可见性,如果元素可见,切换后则为隐藏,隐藏切换后则是可见的
$(function(){
$("#panel h5 .head").toggle(function(){
$(this).next().toggle();
},function(){
$(this).next().toggle();
})
})
6、事件冒泡:
停止事件冒泡:event.stopPropagation()
阻止事件默认行为:event.preventDefault()
如果想对事件对象停止冒泡以及默认行为,在可以事件处理函数中返回false:
event.stopPropagation()改成 return false
event.preventDefault() 改成 return false
7、在jQuery中不支持事件捕获,如果需要事件捕获,使用原生的js代码
8、event.type 事件类型
event.target 获取触发事件的元素
event.pageY以及event.pageX 是获取到光标相对于页面的y坐标以及x坐标,如果页面有滚动条还要加上滚动条的宽度以及高度
event.which 是在鼠标事件中获取到鼠标的左右中键,分别返回1,2,3,
9、移除事件:unbind(“click”)
$(function(){
$("#btn").bind("click",myFun1 = function(){
$("#test").append("<p>wwwww</p>");
}).bind("click",myFun2 = function(){
$("#test").append("<p>wwwwssw</p>");
}).bind("click",myFun3 = function(){
$("#test").append("<p>wwwwqw</p>");
})
})
//单独删除某一事件
$("#delTwo").click(function(){
$("#btn").unbind("click",myFun2);
})
10、one()方法是对于只需要触发一次的,触发一次后就会解除绑定,也就是说只要在用户第一次点击的时候,处理函数才会生效
11、trigger(”click”) -----eg:用户在进入页面后就会触发click事件,不需要用户去主动点击
$(“#btn”).trigger(“click”) 等价于$(“#btn”).click()
另外还可以通过传递数据参数:
$("#btn").bind("myClick",function(event,message1,message2){
$("#test").append("<p>"+message1+message2+"</p>");
});
$("#btn").trigger("myClick",["我的自定义","事件"]);
trigger()方法执行事件后会执行浏览器的默认事件,如果不想执行默认事件,需要使用以下方法:
$("input").triggerHandler("focus")---取消聚焦事件
12、还可以一次性为元素绑定多个事件
$(function(){
$("div").bind("mouseover mouseout",function(){
$(this).toggleClass("over");
})
})
13、为事件添加命名空间
$(function(){
$("div").bind("click .plugin",function(){
$("body").append("<p>click</p>");
});
$("div").bind("mouseover .plugin",function(){
$("body").append("<p>click</p>");
});
$("div").bind("dbclick",function(){
$("body").append("<p>click</p>");
});
$("button").click(function(){
$("div").unbind(".plugin");
//会删除含有命名空间.plugin的事件,不会删除dbclick事件
})
})
14、
$(function(){
$("div").bind("click .plugin",function(){
$("body").append("<p>click</p>");
});
$("div").bind("click",function(){
$("body").append("<p>click</p>");
});
$("button").click(function(){
$("div").trigger("click!");
//点击button按钮只会触发click事件,click后面的感叹号是用来匹配所有不包含在命名空间的click方法
//当将感叹号去了之后会触发两个click事件,包含在命名空间中的click事件
})
})
jQuery中的动画:
1、show()以及hide()方法
相当于display = none /block/inline-block
在两个方法中添加参数,slow,fast,normal,获取是一个数值
2、fadeIn()以及fadeOut()方法:只改变元素的透明度
3、slideUp()以及slideDown()方法:只改变元素的高宽,slideUp是由下到上缩短隐藏,slideDown是由上到下显示
4、animate()方法:
animation(params(样式属性),speed,callback)
$("#myImg").click(function(){
$(this).animate({left:"500px",height:"200px"},300);
})
5、停止元素的动画:stop([clearQuere],[gotoEnd]),两个参数都是一个布尔值
6、判断元素是否处于动画状态:
if(! $(element).is(":animated")){
}
7、延迟动画:delay(10000)
8、toggle(speed,[callBack])
slideToggle(speed,[easing],[callback])—通过高度变化切换匹配元素的可见性
fadeTo(speed,opacity,[callBack])---将元素的不透明度以渐进方式调整到指定值
fadeToggle(speed,[easing],[callBack])---通过透明度变化切换匹配元素的可见性
jQuery-事件以及动画的更多相关文章
- jQuery事件以及动画
jQuery事件以及动画 一.jQuery事件 加载DOM 在页面加载完毕后, 浏览器会通过 JavaScript 为 DOM 元素添加事件. 在常规的 JavaScript 代码中, 通常使用 wi ...
- jQuery事件与动画
一 事件 1 加载DOM事件 $(document).ready():执行时机:DOM元素准备就绪 执行次数:多次 简单写法:原:$(document).ready(function(){}) ...
- JQuery 事件与动画
第一大部分 提纲 事件与动画 一.事件 1.在JavaScript语法中的事件,把onxxxxx中的on去掉,就是JQuery中的事件. onclick - click ondblclick - db ...
- 第三章 jQuery事件和动画
1.什么是事件:事件指的是用于对网页操作的时候,网页做出的一个回应. 2.JQuery中的事件:JQuery事件是对JavaScript事件的封装,常用事件的分类如下:(1)基础事件:window事件 ...
- JavaScript jQuery 事件、动画、扩展
事件 因为JavaScript在浏览器中以单线程模式运行,页面加载后,一旦页面上所有的JavaScript代码被执行完后,就只能依赖触发事件来执行JavaScript代码. 浏览器在接收到用户的鼠标或 ...
- 初学jQuery之jQuery事件与动画
今天我们就谈谈jquery中的事件和简单动画吧,它们毕竟基础是进阶华丽的根本!! 1.事件 1.window事件 ready 准备就绪 2.鼠标事件 方法 ...
- JQuery事件与动画总结
1.加载DOM 1.1.window事件 window.onload=function(){}.... 时机:其他资源都加载完毕后,再执行 $(function(){}) ……:只是等待标签完毕,即可 ...
- jquery事件和动画操作集锦
一,事件 1,加载事件 1 2 3 4 5 6 $(document).ready(function(){ //todo }); //dom准备就绪后执行ready里面的函数,此时dom对应的相关 ...
- python 之 前端开发( jQuery事件、动画效果、.each()、 .data())
11.58 事件 11.581 事件绑定方法与解绑 绑定事件: // 绑定方式一: $('.box1').click(function () { alert('绑定方式一') }); // 绑定方 ...
- jQuery事件和动画
1.toggle事件 <!DOCTYPE html> <html> <head lang="en"> <meta charse ...
随机推荐
- 仿知乎程序 fragment的切换以及toolbar在不同页面下显示的menu不同
我们在看知乎的时候,你会发现,首页,发现,关注,收藏,草稿这五项,你在点击之后进入到相应页面之后,侧滑菜单还在,你左侧滑一下,这个侧滑菜单还在,而提问,左滑屏幕,这个页面就没有,有点像返 ...
- 【leetcode】Combinations (middle)
Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. For exampl ...
- 【leetcode】Binary Tree Maximum Path Sum (medium)
Given a binary tree, find the maximum path sum. The path may start and end at any node in the tree. ...
- eclipse快捷键Alt + / 失效
最近电脑上的Eclipse没有了自动提示功能,也不是全部不提示,大多数情况下按下"alt+/"键还会产生提示,但是当我在java项目中邪main方法和syso的时候,"a ...
- VS2010编译Qt4.8.2的64版本库
安装qt-win-opensource-4.8.2-vs2010.exe(从http://download.qt.io/archive/qt/4.8/4.8.2/下 载),这个是32位的,里面有编译好 ...
- [Android Pro] Fragment中使用SurfaceView切换时闪一下黑屏的解决办法
方法一.在Activity的onCreate中添加如下代码 getWindow().setFormat(PixelFormat.TRANSLUCENT); reference to : http:/ ...
- Mac 下查看 Android Studio 的 SHA1的方法
cmd -> ->cd .android ->keytool -v -list -keystore debug.keystore 默认口令:android ************* ...
- hud 1019最小公倍数
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1019 思路:头两个数先求,再用所求的数与后面的一个数求,依次类推 #include<stdlib ...
- DDR3详解(以Micron MT41J128M8 1Gb DDR3 SDRAM为例)
转自:http://www.360doc.com/content/14/0116/16/15528092_345730642.shtml 以及参考网络. 首先,我们先了解一下内存的大体结构工作流程,这 ...
- 简单的mysql封装类
class mysql{ private $host; private $user; private $pwd; private $dbname; private $charset; private ...