使用 jQuery,第 2 部分: 构建未来的 Web 应用程序
2009-08-29 00:00:00 来源:WEB开发网如下所列的事件都 符合我在之前所介绍的设计模式,而且也都具有与其相关联的两个函数。为了简单起见,我只列举了第一个:
blur() - 在 Form 元素失去焦点时调用,例如,用 tab 键移出具有焦点的文本字段
change() - 在 Form 元素失去焦点,并且其值因获得焦点而更改时调用。Internet Explorer 和 Firefox 对此的处理稍微不同。
click() - 当在页面元素(不一定是 Form 元素)上单击时调用
dblclick() - 当在页面元素(不一定是 Form 元素)上双击时调用
error() - 当元素出现内部错误时调用,不同的浏览器对此的处理不同,可能很多人都亲自体验过
focus() - 当某个 Form 元素获得焦点时调用
keydown() - 当页面元素在其上/内发生一个 keypress 时调用
keyup() - 当页面元素在其上/内释放一个 keypress 时调用
keypress() - 当相同的页面元素相继发生 keydown 和 keypress 时调用
select() - 文本在文本字段内被选中时调用,而不是内容在组合框内被选中时(这时发生的是更改事件)调用。
submit() - 提交 Form 时调用
还有一些函数不遵守上文概括的模式,而且也只包含一个可调用的函数。我将这些例外也列于此,但它们不常用:
resize(fn) - 对象调整大小时调用
scroll(fn) - iframe 卷起时调用
load(fn)/unload(fn) - 对象在页面上加载/重载时发生
此外,您可以想像得到,一些事件是与鼠标紧密相连的。由于这些事件常被误用,所以我将它们包括在第三节。认识到这一点后,jQuery 已经用特定的函数替代了其中的一些事件。我将它们列于此,只是为了直接与底层的 DOM 事件相匹配,但对于所有的实际使用,最好使用其他的方法。比如,当鼠标在某个元素上按下或释放时,就会调用 mousedown(fn) 和 mouseup(fn) 方法。然而,更多时候,却应该调用 click() 方法,因为此方法也会作为事件抛出,而且它更符合预期的行为,更不容易出错。试想一下这样的情况:用户在某个按钮上按下鼠标,发现错了,立即松开鼠标而不是释放鼠标。如果用户用所定义的 mouseup(fn) 在另一个页面元素之上释放鼠标,那么应该发生什么行为呢?理想情况下,这两个函数的使用应该限于对界面的拖放,因为这种情况下单击不会有合适的替代。
编缉推荐阅读以下文章
- 使用 jQuery,第 3 部分: 用 jQuery 和 Ajax 构建富 Internet 应用程序
- 使用 jQuery,第 1 部分: 将桌面应用程序引入浏览器
更多精彩
赞助商链接