读了将近两章,才发现,原来不叫Head First 改名 Head Rush ,风格还是依旧,喜欢。和Servlet相比,这本背起来舒服多了,少了些考试的影子,读起来也清爽了些。废话不说太多了,赶紧开工……
0、又一次读了前言,这次特别注意其中的一点(或许是夏天的原因,嘻嘻):喝水,多喝水:你的脑袋需要浸泡在充分的液体内才能运作良好,脱水现象会减缓认知功能。(Pxxiii);
1、让你的Web应用程序闪闪发亮。差不多是时候该让你的Web应用程序操作起来像具有松香气息的桌面应用程序的感觉了。Ajax,这是用来创建丰富互联网应用程序的技术,让应用程序更交互、更敏感、更容易使用。(P1);
2、Ajax里的JavaScript以异步的方式与Web服务器沟通。换言之,当JavaScript送出请求给服务器时,你仍然可以在页面表单上填入数据,甚至点击——这时,Web服务器仍在后台工作。而服务器完成工作(响应)时,程序代码只更新需求改变的部分页面,因此你根本不用等候。这就是异步请求的神奇之处!结合了异步请求与更新,而不用重载页面,你就是使用了Ajax应用程序。(P4);
3、重点剪辑:
异步应用程序是使用JavaScript对象作出请求,而不是提交表单。
请求与响应是由Web浏览器处理,而不是直接由JavaScript代码处理。
一旦浏览器得到异步请求的响应,它会以服务器的响应“回头调用”JavaScript。
(P12);
4、Ajax实现滑雪板“反”斗城HTML步骤:
4.1 创建一个请求对象:var request = new XMLHttpRequest(); or = new ActiveXObject("Msxm12.XMLHTTP"); or = new ActiveXObject("Microsoft.XMLHTTP");(两or 后是针对ie)。
4.2 请求更新过的销售额。request.open("GET", url, true);
4.3 编写updatePage();
(P16, 26, 36);
5、(接着4.2)open()方法初始化一个连接,GET 表示如何将数据送到服务器,url是服务器上面(PHP脚步的URL),true 意味着请求是异步的(P26);
6、 通常在送出大量数据给服务器时,或者送出一张涉及金额的表单时,或者下定单时,才会使用POST。(P26too);
7、request.send(null);表示没有数据随着这个请求一起送出。(服务器不需要任何数据)(P30);
8、隆重介绍Web浏览器:一定有东西私底下将这一切连接起来,这个“东西”就是Web浏览器。浏览器将HTML和CSS结合起来,将这些尖尖的标签和分号替换掉,成为图片、按钮和文字。
负责运行JavaScript代码的也是Web浏览器。私底下,浏览器会处理所有重要的工作,像存储变量的值、创建新的对象、处理网络请求等。
真正送出请求和接收响应的还是浏览器。
(P40~41);
9、request.open(....);
request.onreadystatechange = updatePage(传说中的回调函数);
....send();
(P46);
10、你可以利用JavaScript请求对象的responseText属性取得服务器的响应。
function updatePage() {
if (request.readyState == 4) //第 12 中的就绪状态 4
var newTotal = request.responseText;
……
}(P48, 50);
11、var cash = Math.round(cash * 100) / 100; //这个小技巧可以确保金额只到小数点后两位。(P52);
12、浏览器可以通过就绪状态得知请求处于哪种状态:
1》在这里,连接刚刚被初始化了;
2》现在正在处理请求;
3》服务器快要完成请求了;
4》全部完成,已经可以使用服务器的响应。(P54);
13、传统的Web应用程序都是发出请求给服务器,然后取得响应,更新的数据通常会被包装在一个完整的,新的HTML页面中(或许更新的数据只有一个小小的文本框)。(P60);
第一章摘记完成。基础知识点还是不少,讲得算是通俗深刻。喜欢o(∩_∩)o