javascript结合Cookies实现浏览记录历史第1/3页_javascript技巧

由于以前对javascript了解不够深入,一时间手足无措。

后来经过两位高手同事的指点(对这两位同事的敬仰犹如滔滔江水连绵不绝...),恍然大悟,豁然开朗

成功地完成了此功能的添加。

首先来介绍一下javascript中关于此功能的一些对象和方法:

1. window.event对象:

event代表事件的状态,例如触发event对象的元素、鼠标的位置及状态、按下的键等等。

event对象只在事件发生的过程中才有效。

2. event.srcElement:

表示该事件的发生源 通俗一点说也就是该事件被触发的地方

3. srcElement.parentNode:

表示该事件发生源的父结点

4. srcElement.tagName:

表示事件发生源的标签名

5. toUpperCase():

大写化相应字符串的方法

基本上就是这些属性和方法,可能对于刚刚接触javascript的朋友们或者以前很少使用此类功能的朋友来说,这些对象有些陌生,不过没关系,了解以后发现其实并不难,和javascript验证表单之类的并没有太多的不同。

下面就结合程序给大家一步一步讲解(程序难免有不合理之处,希望大家多多指正,共同进步):

第一部分:javascript纪录浏览动作。

复制代码 代码如下:

function glog(evt) //定义纪录鼠标点击动作的函数

{

evt=evt?evt:window.event;var srcElem=(evt.target)?evt.target:evt.srcElement;

try

{

while(srcElem.parentNode&&srcElem!=srcElem.parentNode)

//以上这个语句判断鼠标动作是否发生在有效区域,防止用户的无效点击也被纪录下来

{

if(srcElem.tagName&&srcElem.tagName.toUpperCase()=="A")//判断用户点击的对象是否属于链接

{

linkname=srcElem.innerHTML; //取出事件发生源的名称,也就是<a>和<a/>之间的文字,也就是链接名称哈

address=srcElem.href+"_www.achome.cn_"; //取出事件发生源的href值,也就是该链接的地址

wlink=linkname+"+"+address; //将链接名称和链接地址整合到一个变量当中

old_info=getCookie("history_info"); //从Cookies中取出以前纪录的浏览历史,该函数后面有声明

//以下程序开始判断新的浏览动作是否和已有的前6个历史重复,如果不重复则写入cookies

var insert=true;

if(old_info==null) //判断cookie是否为空

{

insert=true;

}

else

{

var old_link=old_info.split("_www.achome.cn_");

for(var j=0;j<=5;j++)

{

if(old_link[j].indexOf(linkname)!=-1)

insert=false;

if(old_link[j]=="null")

break;

}

}

if(insert)

{

wlink+=getCookie("history_info");

setCookie("history_info",wlink); //写入cookie,该函数后面有声明

history_show().reload();

break;

}

}

srcElem = srcElem.parentNode;

}

}

catch(e){}

return true;

}

document.onclick=glog;//使每一次页面的点击动作都执行glog函数

当前1/3页 123下一页阅读全文

时间: 2024-08-08 03:40:03

javascript结合Cookies实现浏览记录历史第1/3页_javascript技巧的相关文章

javascript结合Cookies实现浏览记录历史

最近在工作当中遇到一个问题 有个页面需要添加一个浏览历史记录功能,具体来说就是要记录下用户在此网站的点击历史 并把它们降序排列出来(只显示前6个浏览历史而且不能重复). 由于以前对javascript了解不够深入,一时间手足无措. 后来经过两位高手同事的指点(对这两位同事的敬仰犹如滔滔江水连绵不绝...),恍然大悟,豁然开朗 成功地完成了此功能的添加. 首先来介绍一下javascript中关于此功能的一些对象和方法: 1. window.event对象: event代表事件的状态,例如触发eve

ESC之ESC.wsf可以实现javascript的代码压缩附使用方法第1/5页_javascript技巧

作用:可以对javascript的大小进行压缩.使javascript的加载速度变快. 用法: 在 cmd下面输入的东西: cscript ESC.wsf -l 3 -ow ../global.js global.js 上面是一个简单的例子:可以自己建一个bat文件放在当前目录下面 cscript ESC.wsf -l 压缩级别 -ow ../要压缩到那个目录 需要进行压缩的原js 1. Level 0 :: No compression //没有处里 Level 1 :: Comment re

javascript Range对象跨浏览器常用操作第1/2页_javascript技巧

开发的功能主要涉及即时代码着色(CodeColoring)和语法提示(CodeHints)功能,稍后会总结功能开发中问题或提供源码. 以下是个人对Range对象的了解和常用操作的实例和总结: Range对象 Range对象表示文档的连续范围区域,如用户在浏览器窗口中用鼠标拖动选中的区域. dom标准Range对象 http://www.w3school.com.cn/xmldom/dom_range.asp 在ie中使用TextRange对象 http://www.hbcms.com/main/

不唐突的JavaScript的七条准则整理收集第1/2页_javascript技巧

1.不要做任何假设 (JavaScript是一个不可靠的助手) 可能不唐突的JavaScript 的最重要的一个特性就是--你要停止任何假设: * 不要假设JavaScript是可用的,你最好认为它很有可能是不可用的,而不是直接依赖于它. * 在你经过测试确认一些方法和属性可以使用之前,不要假设浏览器支持它们. * 不要假设HTML代码如你想象的那样正确,每次都要进行检查,并且当其不可用的时候就什么也不要做. * 让JavaScript的功能独立于输入设备 * 要记住其他的脚本可能会影响你的Ja

JavaScript 浮动定位提示效果实现代码第1/2页_javascript技巧

这个效果本身难度不大,主要在程序结构和扩展中下了些功夫,务求用起来更方便,能用在更多的地方.程序特点 1,同一个提示框用在多个触发元素时,只需一个实例: 2,显示和隐藏分别有点击方式和触发方式选择: 3,能设置延时显示和隐藏: 4,有25种预设定位位置: 5,可在预设定位基础上,再自定义定位: 6,可设置自适应窗口定位: 程序说明 [Tip对象] Tip对象就是用来显示提示信息的容器,程序用Tip属性表示.这个没什么要求,程序初始化时会对它进行一些设置. 首先进行下面设置: 复制代码 代码如下:

JS基于cookie实现来宾统计记录访客信息的方法_javascript技巧

本文实例讲述了JS基于cookie实现来宾统计记录访客信息的方法.分享给大家供大家参考.具体如下: 这里使用JavaScript记录访客的来宾信息,记录是第几次来访,显示的信息有:您的名字;您浏览该网页的次数;您上次浏览网页的时间.可以更改姓名. 运行效果如下图所示: 具体代码如下: <html> <head> <title>记录客户信息</title> <script language="JavaScript"> <!

JavaScript组成、引入、输出、运算符基础知识讲解_javascript技巧

javascript简介: JavaScript 是属于网络的脚本语言! JavaScript 被数百万计的网页用来改进设计.验证表单.检测浏览器.创建cookies,以及更多的应用. JavaScript 是因特网上最流行的脚本语言. 下文重点给大家介绍js组成,引入,输出,运算符基础知识,具体详解如下所示: JavaScript组成: ECMAscript 浏览器对象模型 BOM 文档对象模型 DOM // ecmascript bom dom dom (文档对象模型) 用来访问和操纵htm

javascript的alert box在java中如何显示多行_javascript技巧

如果直接在javascript代码中,显示多行直接加\n就好了: 复制代码 代码如下: alert("第一行\n第二行"); 但是在java代码中,\n是不行的,\\n才能显示多行!!! 复制代码 代码如下: String strTemp="历史答题报告:\\n"+"您答对了"+RdData.getCcnt()+"道题\\n"+"您有"+RdData.getBcnt()+"道题没答\\n"

JavaScript编写检测用户所使用的浏览器的代码示例_javascript技巧

能力检测在编写代码之前先检测特定浏览器的能力.例如,脚本在调用某个函数之前,可能要先检测该函数首付存在.这种检测方法将开发人员从考虑具体的浏览器类型和版本中解放出来,让他们把注意力集中到相应的能力是否存在上.能力检测无法精确地检测特定的浏览器和版本. 怪癖检测怪癖实际上是浏览器实现中存在的bug,例如早期的webkit中就存在一个怪癖,即它会再for-in循环中返回被隐藏的属性.怪癖检测通常涉及到运行一段代码,然后确定浏览器是否存在某个怪癖.由于怪癖检测无法精确地检测特定的浏览器和版本. 用户代