
本文将用js+cookie来实现这一功能,因为最近都在研究jquery,所以也就顺便用上了,如果你不想用jquery,那么你更需要了解实现的过程就可以了,代码自己去写。
需要用到一个jquery的cookie插件,用来操作cookie,连接
https://www.jb51.net/article/18276.htm需要稍微了解json,资料使用json然为了简单,这里假设浏览记录只记录3个。
基本流程如下: 1、如果cookie中记录的历史产品数目为0或1或2,那么直接在cookie中插入。
2、如果cookie中记录的数目为3(因为我们限定了只能记录3个),那么将第一组记录的去掉,去掉的方法是重新遍历,但不从第一个开始,而从第二个开始,再插入新的历史记录。
准备:
1、我们要存进去cookie的json字符串类似如下:
var hisProduct = eval[
{"url":"1.html","imgurl":"1.jpg","proname":"pig1","proprice":100},
{"url":"2.html","imgurl":"2.jpg","proname":"pig2","proprice":200},
{"url":"3.html","imgurl":"3.jpg","proname":"pig3","proprice":300}
];
url:是产品的页面url
imgurl:是图片的url
proname:产品名称
proprice:产品价格
2、如何取得这些信息?下面以京东商城为例子:

我们需要取得的就是上面“黄色区域”部分,还有一个是页面地址。查看其代码,定位到关键部分的代码块如下:
<div class="Product_Name"><h1>惠普(HP)Deskjet D2568 彩色喷墨照片打印机</h1><font color="#FF0000" >劲爆价格 双墨滴打印技术还原照片本色 </font></div>
<div id="Product_BigImage" class="jqzoom" onclick = "window.open('http://www.360buy.com/bigimage.aspx?id=131407')"><img onerror = "this.src='http://www.360buy.com/images/none/none_347.gif'" alt="惠普(HP)Deskjet D2568 彩色喷墨照片打印机" src="http://img10.360buy.com/S1/809/8b2bf92f-74f9-46c2-929d-f47fa6fce2d1.jpg" width="349" jqimg="http://img10.360buy.com/S0/809/8b2bf92f-74f9-46c2-929d-f47fa6fce2d1.jpg"/></div
京东的价格是做成图片的:
<ul class="Pro_baseinfo"><li><em class="grey">商品编号:131407</em></li><li>市 场 价:<em class="m_line">¥499.00</em></li><li>京 东 价:<img onerror = "this.src='http://www.360buy.com/images/no2.gif'" src ="http://price.360buy.com/P7EDAD82DC8D8212393096333144388F6,3.png"/><a target="_blank" class="link_1" href="http://jd2008.360buy.com/notify.aspx?id=131407&type=1&key=7EDAD82DC8D8212393096333144388F6"">(降价通知我)</a>
用jquery取得我们需要的信息:
$(function(){
var pro_url = document.URL;//页面地址
var pro_name = $(".Product_Name h1").text();//产品名称
var pro_img = $("#Product_BigImage img")[0].src;//图片路径
var pro_price = $(".Pro_baseinfo li").eq(2).children("img")[0].src;//价格
})
补充:这里京东的比较复杂一点,而我们如果是自己写的程序可以给一个要获取的元素一个id。
演示获取(请“运行代码”后刷新一次):
ES6中Array.find()和findIndex()函数的用法详解
ES6为Array增加了find(),findIndex函数。find()函数用来查找目标元素,找到就返回该元素,找不到返回undefined,而findIndex()函数也是查找目标元素,找到就返回元素的位置,找不到就返回-1。下面通过实例详解,需要的朋友参考下吧
收藏 0赞 0分享
JS闭包的几种常见形式实例详解
本文通过实例代码给大家详细介绍了js闭包的几种常见形式,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友参考下
收藏 0赞 0分享
Javascript 严格模式use strict详解
严格模式:由ECMA-262规范定义的JavaScript标准,对javascrip的限制更强。这篇文章主要介绍了Javascript 严格模式use strict详解 ,需要的朋友可以参考下
收藏 0赞 0分享
引入JavaScript时alert弹出框显示中文乱码问题
今天在HTML中引入JavaScript文件运行时,alert弹出的提示框中文显示为乱码,怎么解决此问题呢?下面小编给大家带来了引入JavaScript时alert弹出框显示中文乱码问题的解决方法,一起看看吧
收藏 0赞 0分享
Angularjs自定义指令实现分页插件(DEMO)
由于最近的一个项目使用的是angularjs1.0的版本,涉及到分页查询数据的功能,后来自己就用自定义指令实现了该功能,下面小编把实例demo分享到脚本之家平台,需要的朋友参考下
收藏 0赞 0分享
查看更多