最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript結(jié)合Cookies實現(xiàn)瀏覽記錄歷史第1/3頁

 更新時間:2008年09月02日 15:38:23   作者:  
最近在工作當中遇到一個問題 有個頁面需要添加一個瀏覽歷史記錄功能,具體來說就是要記錄下用戶在此網(wǎng)站的點擊歷史 并把它們降序排列出來(只顯示前6個瀏覽歷史而且不能重復)。
由于以前對javascript了解不夠深入,一時間手足無措。
后來經(jīng)過兩位高手同事的指點(對這兩位同事的敬仰猶如滔滔江水連綿不絕...),恍然大悟,豁然開朗
成功地完成了此功能的添加。

首先來介紹一下javascript中關于此功能的一些對象和方法:

1. window.event對象:
event代表事件的狀態(tài),例如觸發(fā)event對象的元素、鼠標的位置及狀態(tài)、按下的鍵等等。
event對象只在事件發(fā)生的過程中才有效。

2. event.srcElement:
表示該事件的發(fā)生源 通俗一點說也就是該事件被觸發(fā)的地方

3. srcElement.parentNode:
表示該事件發(fā)生源的父結(jié)點

4. srcElement.tagName:
表示事件發(fā)生源的標簽名

5. toUpperCase():
大寫化相應字符串的方法

基本上就是這些屬性和方法,可能對于剛剛接觸javascript的朋友們或者以前很少使用此類功能的朋友來說,這些對象有些陌生,不過沒關系,了解以后發(fā)現(xiàn)其實并不難,和javascript驗證表單之類的并沒有太多的不同。

下面就結(jié)合程序給大家一步一步講解(程序難免有不合理之處,希望大家多多指正,共同進步):

第一部分:javascript紀錄瀏覽動作。
復制代碼 代碼如下:

function glog(evt) //定義紀錄鼠標點擊動作的函數(shù)
{
evt=evt?evt:window.event;var srcElem=(evt.target)?evt.target:evt.srcElement;
try
{
while(srcElem.parentNode&&srcElem!=srcElem.parentNode)
//以上這個語句判斷鼠標動作是否發(fā)生在有效區(qū)域,防止用戶的無效點擊也被紀錄下來
{
if(srcElem.tagName&&srcElem.tagName.toUpperCase()=="A")//判斷用戶點擊的對象是否屬于鏈接
{
linkname=srcElem.innerHTML; //取出事件發(fā)生源的名稱,也就是<a>和<a/>之間的文字,也就是鏈接名稱哈
address=srcElem.href+"_www.achome.cn_"; //取出事件發(fā)生源的href值,也就是該鏈接的地址
wlink=linkname+"+"+address; //將鏈接名稱和鏈接地址整合到一個變量當中
old_info=getCookie("history_info"); //從Cookies中取出以前紀錄的瀏覽歷史,該函數(shù)后面有聲明
//以下程序開始判斷新的瀏覽動作是否和已有的前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,該函數(shù)后面有聲明
history_show().reload();
break;
}
}
srcElem = srcElem.parentNode;
}
}
catch(e){}
return true;
}
document.onclick=glog;//使每一次頁面的點擊動作都執(zhí)行g(shù)log函數(shù)

相關文章

  • 關于layui 彈出層一閃而過就消失的解決方法

    關于layui 彈出層一閃而過就消失的解決方法

    今天小編就為大家分享一篇關于layui 彈出層一閃而過就消失的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • Element-plus安裝及基礎組件使用詳解

    Element-plus安裝及基礎組件使用詳解

    ElementPlus是一個基于Vue3的UI組件庫,旨在提供豐富的HTML元素封裝,以簡化前端開發(fā),主要特點包括預定義樣式、事件處理、易用性等,為開發(fā)者提供了一致且美觀的用戶界面,同時支持按需導入,提高項目效率,感興趣的朋友一起看看吧
    2024-09-09
  • JavaScript設計模式之觀察者模式與發(fā)布訂閱模式詳解

    JavaScript設計模式之觀察者模式與發(fā)布訂閱模式詳解

    這篇文章主要介紹了JavaScript設計模式之觀察者模式與發(fā)布訂閱模式,結(jié)合實例形式詳細分析了JavaScript觀察者模式與發(fā)布訂閱模式相關概念、原理
    2020-05-05
  • JS 實現(xiàn)導航菜單中的二級下拉菜單的幾種方式

    JS 實現(xiàn)導航菜單中的二級下拉菜單的幾種方式

    這篇文章主要介紹了JS 實現(xiàn)導航菜單中的二級下拉菜單的幾種方式的相關資料,這里提供了三種方式,和實例代碼,需要的朋友可以參考下
    2016-10-10
  • JavaScript組件開發(fā)完整示例

    JavaScript組件開發(fā)完整示例

    這篇文章主要介紹了JavaScript組件開發(fā)的方法,結(jié)合完整實例形式分析了組件的原理與實現(xiàn)技巧,代碼包含的詳盡的注釋,便于理解,需要的朋友可以參考下
    2015-12-12
  • javascript實現(xiàn)抽獎程序的簡單實例

    javascript實現(xiàn)抽獎程序的簡單實例

    下面小編就為大家?guī)硪黄猨avascript實現(xiàn)抽獎程序的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • 如何利用JavaScript?實現(xiàn)繼承

    如何利用JavaScript?實現(xiàn)繼承

    這篇文章主要介紹了如何利用JavaScript?實現(xiàn)繼承,JavaScript?在編程語言界是個特殊種類,它和其他編程語言很不一樣,JavaScript可以在運行的時候動態(tài)地改變某個變量的類型,下面小編將繼續(xù)介紹JavaScript如何實現(xiàn)繼承,需要的朋友可以參考下
    2022-02-02
  • javascript多物體運動實現(xiàn)方法分析

    javascript多物體運動實現(xiàn)方法分析

    這篇文章主要介紹了javascript多物體運動實現(xiàn)方法,結(jié)合實例形式分析了JavaScript多物體運動的相關注意事項與具體實現(xiàn)代碼,包含四個div塊的橫向、豎向移動,顏色與邊框漸變效果,需要的朋友可以參考下
    2016-01-01
  • 微信小程序自定義帶價格顯示日歷效果

    微信小程序自定義帶價格顯示日歷效果

    這篇文章主要為大家詳細介紹了微信小程序自定義帶價格顯示日歷效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • Bootstrap柵格系統(tǒng)簡單實現(xiàn)代碼

    Bootstrap柵格系統(tǒng)簡單實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了Boostrap柵格系統(tǒng)的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03

最新評論

彭水| 邮箱| 马鞍山市| 商洛市| 西藏| 扎鲁特旗| 平和县| 茌平县| 泊头市| 河间市| 浦东新区| 鹿泉市| 马关县| 遂川县| 青铜峡市| 绥宁县| 玉屏| 鄂伦春自治旗| 陈巴尔虎旗| 岳阳县| 万载县| 长乐市| 浮山县| 颍上县| 鄄城县| 东山县| 隆林| 乐亭县| 常州市| 张家口市| 娄底市| 西平县| 淮南市| 玉环县| 尉氏县| 抚松县| 福泉市| 九龙县| 平邑县| 翁牛特旗| 南丹县|