5.4.1 转向JavaScript(2)


图5-7显示了每个备选样式表的结果。






 

虽然已成功创建了一个函数来切换不同的样式表,但这只完成了一半工作。如果用户刷新该页面或选择了新的备选样式表后离开了当前页面,选择的样式表将被忘记并恢复为默认的样式表。下面我们在JavaScript函数内申请一小片内存。


3. 设计一个JavaScript cookie


从这个没有完成的CSS切换器可以看到,一旦离开或刷新某个页面,浏览器似乎不能






 

有了这一行,工作就完成了一半。setCookie( )有三个参数:cookie的名称(以后可以引用)、要存入cookie的值和cookie过期的天数。前面的小段代码创建了一个名为mystyle的cookie,要设置的值是activeCSS( )函数的参数title。这意味着,如果用户选择了一个链接,这个链接在onclick处理程序中指定了activeCSS('Higher Contrast')(即以Higher Contrast为title参数调用activeCSS),则cookie(mystyle)的值将为Higher Contrast。


说明:


在setcookie( )函数中,指定cookie过期天数是可选的。由于这个参数是可选的,因此我们可以完全不考虑这个参数。然而,省略这个参数将导致setCookie( )函数设置的cookie (mystyle)在用户会话期结束后过期,结果导致用户一关闭浏览器就会丢失他的偏好信息。在前面的示例中,cookie(mystyle)过期的天数被设置为365天(或一日历年)。


通过对setCookie( )的独立调用,就可以把用户从样式列表锚的列表中所做的选择成功地存储起来。但是如何读取这个cookie并获得偏好信息呢?简单地把下面的行添加到script.js文件中即可:






 



标签:
友情链接
轻松育儿世界奇观
苏ICP备16066217号-2