Ajax,这个词出来有很长一段时间了。
从出现到现在,很多的人都其进行讨论,可谓对其意见以及态度各不相同。
现在很多很多关于ajax的库,比较流行的 有dojo、jquery、yui、extjs以及针对功能开发的一些小插件。我相信已经很多的人都接受了ajax。
说句题外话,软件这一行业现在真的可以称得上林子大了,什么鸟都有。装B的,自以为是的,瞎搞软件市场的,随便学了点软件的东西都称之为程序员等,或者干脆成为软件编码机器的等等。其实,我并不是在表达我对这些的不满,我在想虽然我们确实在金融这一块很是吃亏,但是作为一个程序员或者软件其他相关人员是不是多点研究精神。
言归正传,本文确实是谈ajax,我所以的文章都是有自己的独特思想融入其中。这篇也是同样。
一 Ajax的误区
为什么会出现ajax的误区,其根本原因是对html本身的认识不够。那么出现什么误区?
1、很反感从页面出现开始,很多块都在loading。这些反感ajax就放弃掉了ajax。
2、安全性。认为ajax 安全性不高。或者说什么脚本攻击什么的。
3、整个页面使用ajax。可能是太热爱了。
从ajax对页面的影响应该分为俩中:(1)页面初始化数据导入,(2)页面行为数据导入。而真正要建议的是不要过分在初始化页面导入中使ajax,非常建议在页面行为数据导入中多多使用ajax。
页面初始化数据导入,我建议不要使用任何ajax。有以下几点原因:
1、ajax同时最大的链接量只有2。这是很多人都不知道的地方。另外,过多的http对页面的影响性能实在太大了。 那么是不是完全使用html,不用任何脚本?答案是否定,稍后给出方案。
2、网络本身就不安全的。采用一些手段处理就行。
3、 我个人对于ajax推崇的是不要过分使用ajax,而是尽可能的在原滋原味的html上做应用。这样有利于html的代码与ajax的分离,更有利于软件开发以及优化工作。
二 如何初始化页面数据
上面我谈到初始化页面数据,最好不要使用ajax。也不建议完全使用html代码。
有以下几种解决方案:
1、数据脚本化存储。在页面中使用脚本变量来存储一些数据,放在页面中,有利于对html渲览的控制,图片延迟导入,行为导入少量数据的数据快速得到等。
格式:var pageValue = (页面数据);
2、数据脚本页面导入。很多的时候,我喜欢这种处理方式。因为他能够解决ajax跨站问题,而不需要更改html头部信息,以达到能够跨站处理。而对于其他页面可能使用到相同数据,这样可以做缓存处理,更有利于对页面的性能的提升。
格式:
三 历史页面数据
使用iframe(这里不是重点,一笔带过。 )
四 本质认识
有人认为对于javascript只需要简单的应用就OK了。其实这是非常错误的观点。就像极度使用ajax是不好的一样。如果从上面的观点继续研究或者有其他的一些研究的人,会发现。javascript脚本对页面有许多的好处。而不只是简单的说在提交一个表格的时候的判断。
上面只是简单的说下,javascript的现状。
1 页面上的函数、类、变量等都是window的节点数据。
关于这一点可能有许多的人不是很明白,或者根本就不知道。比如说页面上申请了一个函数function demo(){},我们是可以通过window. demo访问到的。
如果能够了解到这一点,我们可以做很多的应用。以及对 javascript的隔离性/规范化很有帮助。
比如说,需要你做一个上传的插件,需要有ajax的loading 效果的。
其实很简单,引入一个 iframe来支持文件的 异步上传。
上传控件时候,页面输出脚本。
jquery提示框,加载框等等就可以实现了页面加载效果。当然不只是这些应用。
2 伪命名空间
javascript其本身不是面向对象的语言。而我们能够做到面向对象的设计与开发。它是通过原链实现的。伪命名空间是通过匿名函数实现的。为什么要谈到这点,相信有些书上已经写到了。而我再次谈到 ,是希望引起大家的注意,很多人的代码根本不合格的。
3 任何对象都可以自定义节点,读取节点。
4 类和对象都能够穿插着使用。
5 this
(1)在页面中的this是指当前页面。
(2)addevent的脚本中的this 是指当前html标签节点。
(3)对象中的this是指对象的节点
(4)类中的this是类的节点
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12639172/viewspace-663000/ ,如需转载,请注明出处,否则将追究法律责任。