如何获取网站icon有哪些可行的方法


Posted in Javascript onJune 05, 2014

获取网站icon,常用最简单的方法就是通过website/favicon.ico来获取,不过由于很多网站都是在页面里面设置favicon,所以此方法很多情况都不可用。

更好的办法是通过google提供的服务来实现:
http://www.google.com/s2/favicons?domain=http://www.baidu.com

代码:

<!doctype html> 
<html> <head> 
<meta charset="utf-8"> 
<style type="text/css"> 
#input { 
height: 300px; 
padding: 10px 5px; 
line-height: 20px; 
width: 1000px; 
} 
#submit { 
height: 30px; 
text-align: center; 
color: #ffffff; 
line-height: 30px; 
width: 80px; 
background-color: blue; 
margin-top: 20px; 
} 
#result { 
margin-top: 20px; 
} 
#result li { 
height: 40px; 
line-height: 40px; 
float: left; 
margin: 10px 14px; 
} 
</style> 
</head> 
<body> 
<textarea id="input" placeholder="输入多个网址以空格间隔"></textarea> 
<div id="submit">获取icon</div> 
<ul id="result"> 
</ul> 
<script type="text/javascript"> 
var input = document.getElementById("input"); 
var submit = document.getElementById("submit"); 
var result = document.getElementById("result"); 
var val; 
function trim(str) { 
var whitespace = ' \n\r\t\f\x0b\xa0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000'; 
for (var i = 0, len = str.length; i < len; i++) { 
if (whitespace.indexOf(str.charAt(i)) === -1) { 
str = str.substring(i); 
break; 
} 
} 
for (i = str.length - 1; i >= 0; i--) { 
if (whitespace.indexOf(str.charAt(i)) === -1) { 
str = str.substring(0, i + 1); 
break; 
} 
} 
return whitespace.indexOf(str.charAt(0)) === -1 ? str : ''; 
} 
function getFavIconUrl(url) { 
var prohost; 
prohost = url.match(/([^:\/?#]+:\/\/)?([^\/@:]+)/i); 
prohost = prohost ? prohost : [true, "http://", document.location.hostname]; 
//补全url 
if (!prohost[1]) { 
prohost[1] = "http://"; 
} 
//抓取ico 
return "http://www.google.com/s2/favicons?domain=" + prohost[1] + prohost[2]; 
} 
submit.onclick = function() { 
val = input.value; 
if (!val) alert("输入为空!"); 
val = val.split(" "); 
val.forEach(function(item) { 
item = trim(item); 
if (!item) return; 
result.innerHTML += "<li>" + item + "<img src='" + getFavIconUrl(item) + "'></li>"; 
}); 
}; 
</script> 
</body> 
</html>

源代码下载
Javascript 相关文章推荐
模拟jQuery ajax服务器端与客户端通信的代码
Mar 28 Javascript
5秒后跳转效果(setInterval/SetTimeOut)
May 03 Javascript
appendChild() 或 insertBefore()使用与区别介绍
Oct 11 Javascript
jquery调取json数据实现省市级联的方法
Jan 29 Javascript
JQuery标签页效果实例详解
Dec 24 Javascript
详解JavaScript 中的 replace 方法
Jan 01 Javascript
JavaScript实现斗地主游戏的思路
Feb 29 Javascript
BootStrap实现手机端轮播图左右滑动事件
Oct 13 Javascript
bootstrap选项卡使用方法解析
Jan 11 Javascript
Bootstrap响应式导航由768px变成992px的实现代码
Jun 15 Javascript
cordova+vue+webapp使用html5获取地理位置的方法
Jul 06 Javascript
Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)
Nov 05 Javascript
IE6中链接A的href为javascript协议时不在当前页面跳转
Jun 05 #Javascript
网页右下角弹出窗体实现代码
Jun 05 #Javascript
获取中文字符串的实际长度代码
Jun 05 #Javascript
jQuery文件上传插件Uploadify使用指南
Jun 05 #Javascript
IE6-IE9中tbody的innerHTML不能赋值的解决方法
Jun 05 #Javascript
首页图片漂浮效果示例代码
Jun 05 #Javascript
原生js实现fadein 和 fadeout淡入淡出效果
Jun 05 #Javascript
You might like
php实现encode64编码类实例
2015/03/24 PHP
thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法
2016/05/19 PHP
php版微信开发Token验证失败或请求URL超时问题的解决方法
2016/09/23 PHP
PHP实现ASCII码与字符串相互转换的方法
2017/04/29 PHP
PHP 无限级分类
2017/05/04 PHP
JavaScript 学习笔记(十四) 正则表达式
2010/01/22 Javascript
jquery 提交值不为空的元素示例代码
2013/05/10 Javascript
Js 去掉字符串中的空格(实现代码)
2013/11/19 Javascript
javaScript中push函数用法实例分析
2015/06/08 Javascript
JS实现黑色风格的网页TAB选项卡效果代码
2015/10/09 Javascript
jQuery插件Validate实现自定义校验结果样式
2016/01/18 Javascript
AngularJS基础 ng-disabled 指令详解及简单示例
2016/08/01 Javascript
基于MVC+EasyUI的web开发框架之使用云打印控件C-Lodop打印页面或套打报关运单信息
2016/08/29 Javascript
jQuery实现简单的网页换肤效果示例
2016/09/18 Javascript
JavaScript事件用法浅析
2016/10/31 Javascript
node.js的事件机制
2017/02/08 Javascript
uploader秒传图片到服务器完整代码
2017/04/22 Javascript
小程序input数据双向绑定实现方法
2019/10/17 Javascript
python开发之str.format()用法实例分析
2016/02/22 Python
python实现批量按比例缩放图片效果
2018/03/30 Python
对numpy 数组和矩阵的乘法的进一步理解
2018/04/04 Python
Python脚本修改阿里云的访问控制列表的方法
2019/03/08 Python
python字符串的拼接方法总结
2019/11/18 Python
mac在matplotlib中显示中文的操作方法
2020/03/06 Python
GAP美国官网:美国休闲时尚品牌
2016/08/26 全球购物
台湾旅游网站:灿星旅游
2018/10/11 全球购物
萨克斯第五大道英国:Saks Fifth Avenue英国
2019/04/01 全球购物
新闻学专业个人求职信写作
2014/02/04 职场文书
公司司机岗位职责
2014/02/07 职场文书
八一慰问活动方案
2014/02/07 职场文书
财产公证书格式
2014/04/10 职场文书
单位承诺书格式
2014/05/21 职场文书
员工教育培训协议书
2014/09/27 职场文书
工作经历证明书范文
2014/11/02 职场文书
2015年食品安全工作总结
2015/05/15 职场文书
JavaScript 数组去重详解
2021/09/15 Javascript