`
世说新语
  • 浏览: 23370 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

以Prototype为例说明现代的js用法(适用于其它js库)

阅读更多

1、选择元素
旧用法

document.getElementById()

 

新用法

$()或$$()

 

评论
新的用法不限于用id选择元素,一般的库都支持CSS的选择语法,无论单选还是多选都非常方便。


2、namespace
旧用法

function submitBreakfastLogEntry(event) {
    . . . . . .
}
function cancelBreakfastLogEntry(event) {
    . . . . . .
}
 

新用法

var BreakfastLog = {
    submitEntry: function(event) {
        . . . . . .
    },
    cancelEntry: function(event) {
        . . . . . .
    }
};

 

评论
这主要是为了防止新函数与已有函数发生重名,在较大一点的项目中这确实是一个问题。


3、 在适当的时候执行页面初始化的js代码
旧用法
整个页面下载完毕后执行onload事件。

<body onload="some_function()">. . . . . .</body>

 

新用法
DOM tree创建完毕,但所有资源(比如一些大的图片)尚未下载完的时候,运行js代码。


document.observe("dom:loaded", function() {
    . . . . . .
});
 

评论
页 面加载完成后,我们可能会对页面进行一些初始化操作。比如我们要隐藏某个链接,按照旧的用法,如果页面有几个较大的图片下载的很慢,这时DOM tree已经构建完毕并且页面的绝大部分已经显示给用户了(包括本该被隐藏的链接),而onload事件还没有执行,这时用户就有可能点击这个链接从而引 发错误。


4、仿照CSS的风格进行事件监听
旧用法

<input type="submit" id="save_as_draft" value="Save as Draft" onclick="postBreakfastLogEntryWithStatus('draft');"/>
<input type="submit" id="save_and_publish" value="Save and Publish" onclick="postBreakfastLogEntryWithStatus('published');"/>
<input type="submit" id="discard" value="Discard" onclick="postBreakfastLogEntryWithStatus('discarded');"/>
 

新用法

$('save_and_publish', 'save_as_draft', 'discard').each( function(button) {
    button.onclick = postBreakfastLogEntry;
});
 

评论
理想状态下,页面的结构(HTML)、行为(js)、展现(CSS)的代码应该是分开的。HTML是主干,js和css通过类似AOP的方式把相关的属性和行为赋给HTML。

2
0
分享到:
评论

相关推荐

    prototype.js 说明文档.doc

    《prototype.js 说明文档》是关于JavaScript库prototype.js的详细指南,主要涵盖了其核心概念、通用方法以及Ajax对象的使用等内容。Prototype是一个由Sam Stephenson编写的JavaScript库,旨在简化和增强JavaScript...

    prototype_1.7.3.js 最新版本

    Prototype.js是一个开源的JavaScript库,由Sam Stephenson于2005年创建。它的设计目标是简化DOM操作,提供面向对象的编程模式,并增强JavaScript的内置对象。Prototype.js的核心理念在于通过增加类和模块化功能,使...

    prototype.js javaScript插件

    - **JSON支持**:Prototype.js提供了`toJSON`方法,可以将JavaScript对象转换为JSON字符串,便于与服务器进行数据交换。 ### 3. Prototype.js的事件处理 - **事件委托**:Prototype.js支持事件委托,允许在一个...

    javascript类库prototype.js

    Prototype.js 是一个强大的JavaScript类库,它为开发者提供了丰富的功能,使得创建具有高度互动性和Web2.0特性的富客户端页面变得更为简单。这个库的设计理念是扩展JavaScript的基础对象,提供一套统一且易于使用的...

    prototype.js

    Prototype.js是一个广泛使用的JavaScript库,它为JavaScript语言添加了许多实用的功能,增强了其在Web开发中的表现力。这个库的核心设计理念是通过扩展JavaScript的基本对象来提供更丰富的功能,使得开发更加高效...

    prototype.js 1.6

    Prototype.js 是一个广泛使用的 JavaScript 库,它为浏览器环境提供了许多实用的功能,尤其是在对象操作和事件处理方面。1.6 版本是该库的一个重要里程碑,引入了许多改进和优化,使得开发人员能够更加高效地编写 ...

    prototype.js文件使用和讲解

    以上就是关于`prototype.js`文件的基本介绍和使用方法。通过这个库,你可以更高效地进行JavaScript编程,实现丰富的Web交互功能。记得结合`prototype.js`开发手册,深入学习并熟练掌握其各种用法,提升你的...

    prototype.js简介

    **标题:** prototype.js简介 **描述:** prototype.js 是一个JavaScript库,...然而,随着ES6及后续版本的推出,许多prototype.js的功能已被原生JavaScript支持,因此在现代开发中,使用这些新的语言特性可能更为合适。

    JS:prototype用法

    ### JS:prototype用法详解 #### 一、概念解析与基本使用 `prototype`是JavaScript中一个非常重要的概念,尤其自IE4及其后续版本引入以来,成为开发人员扩展内置对象功能的强大工具。`prototype`主要服务于面向...

    prototypejs 1.7.3

    PrototypeJS,简称为Prototype,是一个广泛用于JavaScript编程的开源库,它为JavaScript语言引入了许多实用的类和方法,极大地提高了开发效率。版本1.7.3是这个库的一个稳定版本,其中包含了丰富的功能和优化。...

    prototype-1.6.0.3.js+prototype1.4 、1.5中文手册+prototype1.6英文手册

    Prototype是JavaScript库,它为浏览器环境提供了强大的对象扩展和功能,尤其在处理DOM(文档对象模型)和Ajax交互时。这个压缩包包含了Prototype库的多个版本的手册和源代码文件,便于开发者理解和使用。 首先,...

    prototype.js 以及 找到的 相关使用详细说明

    Prototype.js是一个广泛使用的JavaScript库,它为JavaScript语言增加了许多实用功能,尤其在处理DOM操作、Ajax交互以及类(class)系统等方面提供了强大的支持。这个库的名字“Prototype”来源于JavaScript中的一个...

    Prototype-v1.6.0一个javascript库

    开发者可以利用Prototype-v1.6.0.chm获取API信息,通过prototype-1.6.0.2.js引入库功能,同时还有johnson.js和其用法说明来进一步扩展和优化项目。这样的资源对于任何希望使用或学习Prototype库的人来说都是宝贵的。

    prototype.js 1.6中文手册、prototype.js 1.6英文手册、

    Prototype.js 是一个开源的JavaScript库,它扩展了JavaScript语言,为开发者提供了许多便利的功能,特别是在对象操作、DOM操作和事件处理方面。1.6版本是该库的一个重要里程碑,引入了诸多改进和新特性。 ### 1. ...

    prototype.js中文手册

    Prototype.js 是一个开源JavaScript库,由Sam Stephenson于2005年创建,主要用于简化DOM(文档对象模型)操作,增强JavaScript的面向对象编程能力,以及提供实用的函数扩展。它在Web开发中扮演着重要的角色,尤其在...

    prototype_PrototypeJS1.6_

    标题"prototype_PrototypeJS1.6_"中提到的"Prototype"是一个JavaScript库,它为JavaScript编程提供了一套丰富的工具集,主要用于简化DOM操作、创建Ajax应用以及实现对象的继承机制。"1.6版本"表明这是该库的一个特定...

    prototype.js 1.4-1.6[全]

    Prototype.js 是一个广泛使用的JavaScript库,它扩展了JavaScript语言的功能,为开发人员提供了更强大的面向对象编程支持。该库的核心特性是其对JavaScript原型(prototype)机制的深入利用,使得JavaScript对象的...

    prototype.js 实例

    在JavaScript的世界里,Prototype.js是一个著名的库,它扩展了JavaScript的内置对象,为开发者提供了更加便利的编程体验。本实例将深入探讨如何利用Prototype.js来实现弹出窗口和移动窗口的功能,这对于创建交互性强...

    prototype.js学习说明

    Prototype.js 是一个 JavaScript 库,它的主要目标是增强和扩展JavaScript的基本功能,使其更适合开发复杂的Web应用程序。在本文中,我们将深入探讨Prototype.js的核心概念、关键功能和改进,特别是集中在1.3.1版本...

Global site tag (gtag.js) - Google Analytics