jQuery 1.4官方中文手册[译](6)
作者:coolnalu 来源:uxd2 发布时间:2010-01-20 10:46:00
效果 (Effects)
单个属性缓进缓出 (Per-property Easing 文档, Commit)
除了能够给一个动态效果指定缓进出函数外,你现在可以指定每个属性的缓进出函数了。James Padolsey的blog上有更进一步的信息和演示。
$("#clickme").click(function() {$("div").animate({width: ["+=200px", "swing"],height: ["+=50px", "linear"],}, 2000, function() {$(this).after("<div>Animation complete.</div>");});});
事件 (Events)
新方法: jQuery.proxy() (jQuery.proxy() Documenation, Commit 1, Commit 2)
如果你需要保证一个函数内的”this”恒定地保持某个值, 你可以用jQuery.proxy
获得一个相同作用域的函数。
var obj = {name: "John",test: function() {alert( this.name );$("#test").unbind("click", obj.test);}};$("#test").click( jQuery.proxy( obj, "test" ) );
多个事件绑定 (.bind() 文档)
你可以通过递入一个对象来一次性绑定元素的多个事件。
$("div.test").bind({click: function(){$(this).addClass("active");},mouseenter: function(){$(this).addClass("inside");},mouseleave: function(){$(this).removeClass("inside");}});
‘change’和’submit’事件规范化 (Change 文档, Submit 文档)
普通的或是即时的change
和submit
事件可以在各种浏览器上稳定工作了。我们覆盖了IE里的change
和submit
, 替换为与其他浏览器相同的事件。
新的事件: ‘focusin’ and ‘focusout’ (.focusin() 文档, .focusout() 文档, Commit)
focusin
和focusout
在一般情况下等同于focus
和blur
, 但是多了向父元素传递的作用。如果你自己编写你的事件代理模式(TODO), 这个功能将对你有很大帮助。请注意对focus
和blur
使用live()
方法将不会起作用; 在设计的时候我们根据 DOM事件规范决定不使其向父元素传递事件。
$("form").focusout(function(event) {var tgt = event.target;if (tgt.nodeName == "INPUT" && !tgt.value) {$(tgt).after("nothing here");}});
所有的事件都可以成为即时事件 (.live() 文档)
除了ready, focus (用focusin), 和 blur (用focusout)以外, 所有能用.bind()
绑定的事件都可以成为即时事件。
在live()
所支持的事件里,我们对能够支持下面这几个额外的事件感到尤其骄傲。通过.live()
里的事件代理, 1.4版实现了对change
, submit
, focusin
, focusout
, mouseenter
, 以及mouseleave
事件的跨浏览器支持。
注: 如果你需要即时的focus事件
,你应该用focusin
和focusout
, 而不要用focus
和blur
, 因为就像前面提到的, focus
和blur
不向上传递。
还有, live()
也接受数据对象作为参数了, 同bind()
方法一样 (Commit)
live/die也支持环境变量了 (Commit)
现在可以在绑定事件的时候给选择符指定一个环境。如果环境被指定了, 只有属于这个环境下的元素才会被绑定事件。在创建即时事件的时候, 元素本身不需要已经被定义, 但是环境必须被创建。
确定ready事件至少含有body
元素 (Commit)
jQuery现在会检查body
是不是存在,如果不存在,会对body
进行轮流探询。
在不需要手动处理内存溢出的非IE浏览器中, 卸载的速度提高了。 (Commit)


猜你喜欢
- 我想大多数的人在编写ASP程序的时候,都碰到过类似的错误信息: Error Number -> 
- 本文实例讲述了Python实现备份文件的方法,是一个非常实用的技巧。分享给大家供大家参考。具体方法如下:该实例主要实现读取一个任务文件, 根
- 一、前置知识1.1 语料库(Corpus)太长不看版: NLP任务所依赖的语言数据称为语料库。详细介绍版: 语料库(Corpus,复数是Co
- 前言在当前的JavaScript中,并没有枚举这个概念,在某些场景中使用枚举更能保证数据的正确性,减少数据校验过程,下面就介绍一下JavaS
- 首先,将FileToZip.class文件放到ThinkPHP/Extend/Library/ORG/Util/文件夹中,FileToZip
- django框架默认将session保存到数据库中,在高并发访问无疑会影响服务器性能,因此最好将session保存到redis中避免直接从数
- 本文实例讲述了Python实现读取及写入csv文件的方法。分享给大家供大家参考,具体如下:新建csvData.csv文件,数据如下:具体代码
- 要下午传上的.结果事一多,忘记了.好不容易回来 . 这个和 dh20156 的那个,是差不多的。 找不到合适的图片,也
- 若对于同一数据库实例中的两个数据库进行同步则直接对数据库表创建Trigger。SQL Server 2005的联机帮助:Trigger on
- 1 概述利用Python生成简单的词云,需要的工具是cython,wordcloud与anaconda.2 准备工作包括安装cython,w
- Django2.0中编写models类下的ForeignKeybook = models.ForeignKey('BookInfo&
- 在 MySQL 中,可以使用 ALTER TABLE 语句来添加表字段。以下是一些示例代码,可以批量添加多个字段:1 m
- 目录一、慢在哪?二、是否查询了不需要的数据1. 查询不需要的记录2. 多表关联时返回全部列3. 总是查询出全部列4. 重复查询相同的数据三、
- 下面是ThoughtBot 的Git使用规范流程。我从中学到了很多,推荐你也这样使用Git。第一步:新建分支首先,每次开发新功能,都应该新建
- 比如可以定义开学时间为2009年2月8日,然后程序可以算出,今天距开学那天已经是第几周,非常急需这个程序,忘高手们能提供一个,先谢谢了!自己
- 简介Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。Dja
- 【人工智能项目】混合高斯模型运动目标检测本次工作主要对视频中运动中的人或物的边缘背景进行检测。那么走起来瓷!!!原视频高斯算法提取工作imp
- 1.引言创建命令行程序很棒:命令行可以按照我们的设定完成相应的工作,相比GUI界面程序,无需花费数小时尝试使 GUI 正常工作。但有时最好有
- iframe的背景颜色在IE下为window的当前窗口颜色(默认白色,可以在显示外观处对其进行设置),这导致在大幅背景上插入iframe时,
- 前言嗨嗨,大家晚上好 ~ 又来给你们分享小妙招啦在python列表有重复元素时,可以有以下几种方式进行删除觉得不错的话,赶紧学起来用用吧 !