测试:
http://www.etherdream.com/FunnyScript/CheckVisted/Demo.html
效果很有趣,原理很简单,源码里都说了。临时性的方法,期待更完美的解决方案<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>看看你上过哪些网站</title>
</head>
<body>
<style>
.box
{
position: absolute;
left: -999px;
width: 30px;
height: 30px;
overflow: scroll;
visibility: hidden;
}a{font-size: 10px}
a:visited{font-size: 60px}
</style>
<script>
/**
* history url detect
* by etherdream
*/
var $c = function(t){return document.createElement(t)};/*
* 函数:hasVisted
* 参数:url
* 说明:检测最近是否访问过这个url
* 原理:<a href='URL'>X</a>
* 如果访问过这个url,
* 那么a:visited 样式将被使用在此元素上。
* 通过脚本检测该样式产生的影响,
* 即可判断是否访问过。
*
* 本例通过设置超大字体,
* 检测外层元素的滚动条来判定。
* 相信有更好的方法。
*/
function hasVisted(url)
{
var div = $c("div");
var lnk = $c("a");
var h; div.className = "box";
lnk.href = url;
lnk.innerHTML = "X"; div.appendChild(lnk);
document.body.appendChild(div); h = div.scrollHeight; div.removeChild(lnk);
document.body.removeChild(div); return h > 30;
}
</script><p>你最近浏览过:</p><script>
var demo = [
"http://www.google.com",
"http://www.baidu.com",
"http://tieba.baidu.com",
"http://hi.baidu.com",
"http://www.qq.com",
"http://qzone.qq.com",
"http://www.163.com",
"http://www.sina.com",
"http://www.sohu.com",
"http://www.cnblogs.com",
"http://www.csdn.com",
"http://bbs.blueidea.com"
];var url;
for(var i=0; i<demo.length; i++)
{
url = demo[i];
if(hasVisted(url))
document.write("<img src='" + url + "/favicon.ico' /> " + url + "<br />");
}</script>
</body>
</html>
http://www.etherdream.com/FunnyScript/CheckVisted/Demo.html
效果很有趣,原理很简单,源码里都说了。临时性的方法,期待更完美的解决方案<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>看看你上过哪些网站</title>
</head>
<body>
<style>
.box
{
position: absolute;
left: -999px;
width: 30px;
height: 30px;
overflow: scroll;
visibility: hidden;
}a{font-size: 10px}
a:visited{font-size: 60px}
</style>
<script>
/**
* history url detect
* by etherdream
*/
var $c = function(t){return document.createElement(t)};/*
* 函数:hasVisted
* 参数:url
* 说明:检测最近是否访问过这个url
* 原理:<a href='URL'>X</a>
* 如果访问过这个url,
* 那么a:visited 样式将被使用在此元素上。
* 通过脚本检测该样式产生的影响,
* 即可判断是否访问过。
*
* 本例通过设置超大字体,
* 检测外层元素的滚动条来判定。
* 相信有更好的方法。
*/
function hasVisted(url)
{
var div = $c("div");
var lnk = $c("a");
var h; div.className = "box";
lnk.href = url;
lnk.innerHTML = "X"; div.appendChild(lnk);
document.body.appendChild(div); h = div.scrollHeight; div.removeChild(lnk);
document.body.removeChild(div); return h > 30;
}
</script><p>你最近浏览过:</p><script>
var demo = [
"http://www.google.com",
"http://www.baidu.com",
"http://tieba.baidu.com",
"http://hi.baidu.com",
"http://www.qq.com",
"http://qzone.qq.com",
"http://www.163.com",
"http://www.sina.com",
"http://www.sohu.com",
"http://www.cnblogs.com",
"http://www.csdn.com",
"http://bbs.blueidea.com"
];var url;
for(var i=0; i<demo.length; i++)
{
url = demo[i];
if(hasVisted(url))
document.write("<img src='" + url + "/favicon.ico' /> " + url + "<br />");
}</script>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>看看你上过哪些网站</title>
</head>
<body>
<style>
a{display:none}
a:visited{display:none; font-size:60px}
</style>
<script>
function hasVisted(url)
{
var lnk = document.createElement("a"); lnk.href = url;
document.body.appendChild(lnk); try{
sty = lnk.currentStyle || getComputedStyle(lnk, null);
return sty.fontSize == "60px";
}
catch(e){}
finally{
document.body.removeChild(lnk);
}
}
</script><p>你最近浏览过:</p><script>
var demo = [
"http://www.google.com",
"http://www.baidu.com",
"http://tieba.baidu.com",
"http://hi.baidu.com",
"http://www.qq.com",
"http://qzone.qq.com",
"http://www.163.com",
"http://www.sina.com",
"http://www.sohu.com",
"http://www.cnblogs.com",
"http://www.csdn.com",
"http://bbs.blueidea.com"
];var url;
for(var i=0; i<demo.length; i++)
{
url = demo[i];
if(hasVisted(url))
document.write("<img src='" + url + "/favicon.ico' /> " + url + "<br />");
}
</script>
</body>
</html>
http://www.baidu.com
http://tieba.baidu.com
http://www.sina.com
"http://www.google.com",
"http://www.baidu.com",
"http://tieba.baidu.com",
"http://hi.baidu.com",
"http://www.qq.com",
"http://qzone.qq.com",
"http://www.163.com",
"http://www.sina.com",
"http://www.sohu.com",
"http://www.cnblogs.com",
"http://www.csdn.com",
"http://bbs.blueidea.com"
];
http://community.csdn.net