JavaScript Dom编程艺术

当我对JavaScript还停留在只认识这几个字母的时候,有一天我突然心血来潮,在网上下了DOM Scripting的样章,照着里面的例子写了我平生第一个能让我知所以然JavaScript,在浏览器运行成功,兴奋不已,从此能把学习编程的热情持续半年以上,破了过去只能热一两个星期的记录,它带给我的影响不只是JavaScript本身,我同时已经初步入门了Ruby on Rails。 
   
  为什么之前我之前也拷贝粘贴过JavaScript, 也曾试图学习过,但都无疾而终?除了这种JavaScript的经典学习方式不适合作为非程序员的我外,更重要的,网上或者市面上根本没有合适的教程,您所看到的大部分教程,除了让您一头雾水外,还可能把您引入岐途。随着web标准的发展,JavaScript的开发方式已经发生了质的变化,急需一本结合 web标准理念来教学JavaScript的入门教程来革新旧开发者的观念,引导初学者一开始就走在正确的路上,这方面,我想没有谁能够比领导WaSP DOM Scripting Task Force的Jeremy Keith更权威。 
   

  最近,由人民邮电引进出版的中文版《JavaScript DOM编程艺术》终于面市,我第一时间购买了并阅读完毕,因此将我读后感发表出来与大家分享,如有什么高见,请留言不吝赐教,谢谢。 
   
  首先要说的本书的书名,原书名是: Dom Scripting: Web Design with JavaScript and the Document Object Method, 显而易见,本书是面向初学者的,而且对象比较明确,web设计师, 并且表明了本书的内容主要就是DOM, 因此想从本书里看到JavaScript奇技淫巧,想看到Ajax的高级应用什么的,肯定会大失所望。中文版的译名在我本人看来没能表达出原书名要表达的意思,当然基于市场考虑,加上“艺术”之流的字眼还是可以原谅的,最重要的,还是书本的内容质量。翻译来说,虽然有个术语比较别扭(如hook翻译成“挂钩”),但有些也相当精确(如graceful degradation翻译为“预留退路”)。比起CSS Mastery的翻译来,相当不错了。 
   
  为何面对设计师?(当然不是说不是设计师就不能看)当web标准越来越普及,使用XHTML和CSS来构建兼容标准的网页的设计师越来越多,接触了 web标准的观念和大量使用CSS之后,对于DOM其实已经有了非常感性的认识,只需高人来点破即可迅速掌握DOM的基本操作,而在网页里,对DOM的操作,绝大部分是JavaScript. 所以,我觉得,如果您现在已经了解web标准并积累有一定的项目经验,那么,这本书对您来说,阅读应该很轻松,即使,您没有任何的编程经验。所以,书中对于怎么入门编程,其实就只是简介一下JavaScript的语法,而也不会使用复杂的语句来构建例子程序,绝大部分只停留在if, for等简单的逻辑上。 
   
  至于书的内容,我觉得您直接去看网上提供的目录就可以一目了然。在我看来,它只不过就是获取DOM节点及其类型和值,如何改变DOM节点的类型和值,如何插入和删除DOM节点,如果您CSS基础好,那么您简直就是在看一本CSS书籍中的选择器介绍,只不过DOM更强大和灵活,并活起来罢了。并简要介绍了JavaScript的动画原理,让您明白,动的背后其实很简单,还提供了一个制作整站实例的过程,对于一些非设计师来说可以一窥网站诞生的流程。最后一章展望,其实就是入门书都提供的,就是对JavaScript的一些高级应用的概述,来吸引您继续学习的兴趣。不过连展望都不忘提醒贯穿整书的理念: 
   
  JavaScript是用来充实网页而不是构建网页的,并基于web标准的结构,表现,行为分离原则。任何时候不要忘了无障碍,网页的核心内容在JavaScript缺席的时候不能受影响。 
   
  确实,这是本不折不扣的入门书,对于初学者更合适。但是,是不是说对于老鸟就不适合了呢?非也,前面已经提到,尽管本书的技术浅显,但始终贯穿书本的开发理念与原则,或许是作为老鸟的您从来没有听过或者一知半解的,我建议您可以把它当作一本小说来看,不必像初学者一样拘泥于技术细节。为何这么说? 
   
  Ajax引爆JavaScript的流行,流行展望当今JavaScript,大量框架的涌现,您已经可以不费吹灰之力迅速搭建一个 JavaScript应用,这样让大家的应用看起来都一样,最终结果看起来似乎都一样:解决了问题。但是您有否想过,这相同结果可能在只有 JavaScript的时候?您是否想过能在禁止JavaScript的情况下,人家的能用您的不能用?为何?书本不会直接给您答案,但我相信您能间接找到。没错,该刷新您的开发观念了。而且书不厚,您只需花一个下午。 
   
  通往终点的过程与终点本身同样重要。 

转载于:https://www.cnblogs.com/hicc/archive/2008/01/31/1059666.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/300489.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

这批.Net程序员水平不行啊!居然ASP.NET Core Middleware都不会用

最近问了几个面试同一个问题:如果有多个自定义Middleware,如何控制它们的执行顺序(比如先判断用户合法再写访问日志)。居然大部分人答不上来?! 对此,你有什么看法?ASP.NET Core Midd…

在Heroku上部署(托管)Rails项目

2019独角兽企业重金招聘Python工程师标准>>> ①、安装heroku: $ gem install heroku ②、先要生成一个公钥,使用命令: $ ssh-keygen -t rsaGenerating public/private rsa key pair. Enter file in which to save the key (/home/…

企业流程管理平台V2.0介绍

一个软件产品的核心价值在于它适应变化的能力,软件业在中国发展的二十年的历程里,您也许选择过也痛苦过;软件本身并不具有任何直接的价值,但它能为您的企业带来信息的价值、效率的价值及降低成本的价值,然而&#xff0…

java关于异常的面试程序题_Java挑战:最难的十个面试题(附答案)「下」

原标题:Java挑战:最难的十个面试题(附答案)「下」版权声明:本文为CSDN博主「华为云」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/devcloud/a…

数学知识点大集合!有了它学数学真的很简单!

▲ 点击查看很多学生对于数学这门学科都有莫名的恐惧感,不知道怎样学才能学得好。其实,好的方法能让学习效率达到最佳效果。有的时候,孩子学习不好,真的不是因为孩子笨,而是这种方法不适合孩子。其实小学数学学习的难度…

WinAPI: waveOutGetNumDevs - 获取波形输出设备的数目

//声明: waveOutGetNumDevs: UINT; {无参数; 返回波形输出设备的数目}//举例:转载于:https://www.cnblogs.com/del/archive/2008/02/20/1075521.html

使用 Blazor 开发内部后台(三):登录

James: 《使用Blazor开发内部后台》系列是技术社区中一位朋友投稿的系列文章,介绍自己为公司的 WebForm 遗留系统使用 Blazor 重写前端 UI 的经历。本文为第三篇,如果错过了前两篇,建议先阅读一下:使用 Blazor 开发内部后台&#…

PHP访问连接MYSQL数据库

1.连接数据库 使用mysql_connect()函数建立与MySQL数据库的连接 源码:$conmysql_connect(“主机名或IP”,”用户名”,”密码”) or die(“不能连接到数据库,可能是数据库服务器为启动或用户名密码错误”.mysql_error()); 2.选择MySQL数据库 使用mysql_se…

论文排版怕翻车?这个排版神器是时候用起来了!

全世界只有3.14 % 的人关注了青少年数学之旅相信每年临近准备毕设或者毕业论文的同学会遇到这些问题:“我的毕业论文提交一次就被导师批评一次,内容不行就算了,格式也有问题!改论文改到绝望”“期刊的版式要求不是统一的&#xff…

fatal error C1001: INTERNAL COMPILER ERROR

http://www.ieasy.org/yuzuo/archives/2005_07.html (余佐的blog)VC6.0的一个编译错误的解决 在window98下使用vc6.0时,如果预编译头文件(stdafx.h)中包含了模板类的头文件,比如atl的头文件时,编译器会报错:fatal error C1001: IN…

.NET Day in China(上海)| 线上线下

点击蓝字关注我们活动简介.NET 6 Preview 6 在 7月14日已经发布,.NET 6 是微软开启全平台统一一个 .NET 计划以来的第一个 LTS 版本,意义重大,微软在 .NET 6 引入了 MAUI,跨平台开发将更为简单,ASP.NET Core 也在不断的…

java综合图形界面程序设计_java综合图形界面程序设计.doc

java综合图形界面程序设计.doc还剩10页未读,继续阅读下载文档到电脑,马上远离加班熬夜!亲,喜欢就下载吧,价低环保!内容要点:[键入文字]10四、实验小结(包括问题和解决方法、心得体会等)这次课程…

数学知识在游戏中的运用

Transform Vector3 Mathf Lerp,PingPong,三角函数、反三角函数 ,Clamp等 Quatertion Matrix4x4转载于:https://www.cnblogs.com/zhaoqingqing/p/3454444.html

开通博客园,新的网络生活的开始

作者: 笨小窗 作于明德园 E-mail: pgpxc163.com 或许对网络博客真的不是很了解。 流浪于网络上多年,总是想寻找一些满足自己品味的一些博客网站,但所遇到的要不就是网速慢得让人难以忍受,要不就是广告满天飞扬,总之很难找到满足…

[导入]C++程序随笔

C程序的一些随笔文章来源:http://blog.csdn.net/jaopen/archive/2006/03/13/622822.aspx

你有见过从肚子里抽出来的脂肪吗? | 今日趣图

全世界只有3.14 % 的人关注了青少年数学之旅不在家?快递给你放火烧了科普中国我在偷窥你上网...英式没品笑话学校食堂全新版本的空调苍南派轮世界各国的数学水平天秀bot你永远不知道外卖商家还有什么隐藏“绝活”图片迷惑行為大賞你有见过肚子里抽出来的脂肪吗&…

.NET Day in China(上海-7.24)| 线上线下

点击蓝字关注我们活动简介.NET 6 Preview 6 在 7月14日已经发布,.NET 6 是微软开启全平台统一一个 .NET 计划以来的第一个 LTS 版本,意义重大,微软在 .NET 6 引入了 MAUI,跨平台开发将更为简单,ASP.NET Core 也在不断的…

javasript 面向对象

JavaScript. 是一种解释型的、基于对象的脚本语言。尽管与 C、C# 这样成熟的面向对象的语言相比,JavaScript的功能要弱一些,但对于它的预期用途而言,JavaScript的功能已经足够大了。但是由于各种各样的原因,我们在实际进行开发的过…

java 手机 上传图片_在手机端使用拍照功能上传图片的功能的解决文案

主要依赖了一个compress.js的文件,文件内容如下:/** Tencent is pleased to support the open source community by making WeUI.js available.** Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved.** Licensed under the MIT License …

砸4亿美元,GE豪赌的全球最大风力发电机到底多大?

全世界只有3.14 % 的人关注了青少年数学之旅叶片长达107米,转子直径为220米,轮毂高度为135米,叶尖最大高度为260米,几乎是纽约自由女神像从地面到火炬尖端高度的三倍。这就是巨头GE豪赌的全球最大风力发电机:Haliade-X…