HTML即hypertext markup language。最早期的internet是没有html的,因此当用户希望分享一张图片以及一段图片的文字说明时,需要分别把图片和文字发送给接受方。有了html之后,用户不再需要将声音,图片和文字分开发送或共享给别人,html将这些东西统一在了一起,并清晰的定义了这个统一的文档的布局。同时使用URL可以方便的定位这些html资源。因此html的出现意义重大,正是html触发了互联网的全面繁荣。
而现在的交互变成了:
1,浏览器发送http request到web服务器,得到了一个html页面。
2,浏览器发现这个html页面include了一些css 文件,或javascript文件(.js),还有一些图片。
3,浏览器再次向http服务器发送请求,将这些附加的文件下载到本地。(有时本地的cache中已经有一些文件了,则不需要再次download)。
4,浏览器将html渲染以后展示给用户。
浏览器收到一个html页面后,应用一个单独的css文件(也可以是内嵌到html里的),将最终的效果展示给用户。
和css仅控制如何显示页面不同,xslt是将源文件转换成了另一种形式。因此xslt也可以用于做其他的转换,比如将xml转换成xhtml或csv。
DOM使用一个树结构来描述一个xm document。在这个结构中,每个xml element,attribute等,都是一个对象。
例如,document代表整个xml。我们可以在javascript代码中使用document.getElementByID()来取得xml的一个element。而返回的这个element也是一个对象,我们可以直接在这个对象上应用对应element的各种method。
可以说,javascript生活在浏览器的世界里,这就是为什么javascript被称为客户端语言 ( client language )。
HTML DOM Events
HTML DOM events allow JavaScript to register different event handlers on elements in an HTML document.
综上所述,
可以说html, css和javascript是现代web页面的三大组成部分。
To find the path to an interactive web page, you must follow the trail of structure (HTML) to style (CSS), and then to action (JavaScript).
有了javascript,就可以实现真正的interactivity。
而JavaScript作为现在非常流行的语言,它的运行速度是各个浏览器性能的重要指标。
每种浏览器都有一个javascript解释器,它的任务就是运行javascript代码。
这也是为什么javascript也被称为解释性语言( interpreted language)。
先来看看AJAX是如何工作的:
AJAX = Asynchronous JavaScript and XML.
它不是什么新技术,就是指上面的这个过程,同时是基于javascript的。目的是为了不再reload整个html页面。
例如我们现在经常可以看到在网页中点击某个button,页面内容发生了变化,但是浏览器地址栏的URL并没有发生任何改变。
jQuery
http://www.w3schools.com/jquery/default.asp
jQuery is a JavaScript Library.
The jQuery library contains the following features:
- HTML element selections
- HTML element manipulation
- CSS manipulation
- HTML event functions
- JavaScript Effects and animations
- HTML DOM traversal and modification
- AJAX
- Utilities
html5
现在有越来越多的html开始试用html5标准。点击下面链接了解更多详情。
http://www.w3schools.com/html5/default.asp
HTML5 is not yet an official standard, and no browsers have full HTML5 support.
html5的出现是为了解决在近几年web迅速发展中出现的一些问题,这也称为了html5标准指定的一些主旨:
- New features should be based on HTML, CSS, DOM, and JavaScript
- Reduce the need for external plugins (like Flash)
- Better error handling
- More markup to replace scripting
- HTML5 should be device independent
- The development process should be visible to the public