JavaScript笔记之建立动态页面

出色的网页是许多不同因素的综合结果,包括引人注目的内容、良好的设计和对细节的关注,比如加载页面的速度有多快。加快页面加载的方法之一,是在用户的浏览器中使用JavaScript对单独的页面元素进行更新。换句话说,Web服务器并不直接向用户提供页面体验,而是通过因特网发送脚本。然后,脚本利用用户计算机的能力构造出页面。带有这种脚本的页面被称为动态页面(dynamic page)。

本文记录了如何使用JavaScript在网页上显示本地日期和时间;在脚本的控制下跨用户的页面移动对象。

(一)在网页上显示当前日期

JavaScript可以判断出计算机上的当前日期和时间(以数字形式),然后以许多方式操作这个数字。但是必须处理从数字到文本型日期的转换。以下示例演示如何获得当前日期,将它从数字转换为标准的日期,然后将结果写到文档窗口中。

下面脚本script01.js将当前日期写到文档窗口。

var dtString = dayName[now.getDay()] + ", " + monName[now.getMonth()] + " " + now.getDate();

以从右到左的次序理解dayName[now.getDay()]对象。getDay()是用来获得一周中日的JavaScript方法,它向now对象询问今天是星期几。然后,用数字结果引用dayName数组中的对应元素。

接下来,在正在构造的文本字符串后加上一个逗号和空格,在连接下一个表达式monName[now.getMonth()],这个表达式返回月份名称。与前一个表达式一样,它先获得月份号,然后引用monName数组中的对应元素。

最后加上now.getDate(),这个方法返回月中的日。

(二)移动文档中的对象

可以使用JavaScript让对象(图像、文本等)在屏幕上到处移动。实际上,甚至可以让对象看起来像是在做三维移动,让对象在文档中的其他对象背后移动。

HTML文档在此处省略

下面的script.js可以实现移动广告

document.getElementById("annoyingAdvert").onmouseover = slide;

为了开始移动,在广告上添加一个onmouseover事件处理程序,让它出发slide()函数。

if (currPos("annoyingAdvert") < (document.body.clientWidth-150))

在移动广告之前,需要检查它的位置是否处于限制范围内,实现的方法时获取它的当前位置(使用currPos()函数)并与文档的宽度做比较。如果当前位置小于窗口的宽度(减去150像素是为了把层本身的宽度考虑进去),那么就希望继续移动。

setTimeout(slide,100);

每100毫秒重复调用slide(),从而让JavaScript一直移动对象。

(源《JavaScript基础教程》)

你可能感兴趣的:(JavaScript)