兼容多数浏览器的js添加收藏夹脚本

浏览器不断发展,js的很多脚本需要跟进才能适应,目前多数代码对新版本浏览器(IE11, Firefox 27)无法适用,特关注跟进。

推荐代码1

适用浏览器:IE11(windows 8.1), Firefox 37.0.1(windows 8.1),

不适用浏览器:IE6(windows xp),

测试代码

<script type="text/javascript">
function addFavorite(){
    var bookmarkUrl = "http://baidu.com";
    var bookmarkTitle = "baidu";

    if (window.sidebar) { // For Mozilla Firefox Bookmark
        window.sidebar.addPanel(bookmarkTitle, bookmarkUrl,"");
    } else if( window.external || document.all) { // For IE Favorite
        window.external.AddFavorite( bookmarkUrl, bookmarkTitle);
    } else { // for other browsers which does not support
         alert(‘浏览器不支持,请按 Ctrl+D 手动收藏!‘);
         return false;
    }
}
</script><a href="#" rel="sidebar" onclick="addFavorite()">加入收藏</a>

解释说明

1. Firefox 37中废除了window.sidebar.addPanel的功能,如果要使用需要在<a>标签中添加rel="sidebar"才能使用。

2. IE11/Firefox 37中均存在window.external和document.all,因此需要将专门针对Firefox的判断if (window.sidebar)放在前面判断。

推荐代码2

待补充~~

Javascript代码获取浏览器的User-Agent信息:navigator.userAgent

navigator.userAgent"Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; rv:11.0) like Gecko"

IE11(windows 8.1)报文请求头:
User-Agent: "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko"

Firefox 37(windows 8.1)报文请求头:User-Agent: "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0"

Chrome 41:"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36"

目标

找到适用于尽可能多浏览器的js代码,封装,开放,共享。

参考:

[1] http://stackoverflow.com/questions/5828965/bookmark-on-click-using-jquery

[2] IE11 用户代理字符串User-Agent(UA)更改--MSDN

[3] JqueryBookmark--Github

时间: 2024-10-09 06:19:05

兼容多数浏览器的js添加收藏夹脚本的相关文章

js添加收藏夹

兼容ie8及其以下浏览器,代码如下 function addfavorite(){ if (document.all) { window.external.addFavorite("url", "title"); } elseif (window.sidebar) { if(!window.sidebar.addPanel){ alert('收藏失败,您可以尝试通过快捷键 ctrl + D 加入到收藏夹~'); return false; } } else { al

UC手机浏览器js加入收藏夹

概述 对于某些网站来说,让用户一键把网页加入收藏夹的设计是非常棒的,它能提醒用户把网页加入收藏夹,从而增加用户的回访率,使网站获得更多的流量. 在PC端,只有ie和ff支持用js把网页加入收藏夹的操作,在移动端目前都不支持把网页加入收藏夹,除了uc手机浏览器,因为uc手机浏览器用的U4内核,经过了一些处理. 由于UC浏览器目前的用户数量还是挺多的,所以探讨一下UC手机浏览器端怎么实现把网页加入收藏夹是很必要的,我把结果记录下来,供以后开发时参考. 结果 直接上结果,通过下面的代码即可调出浏览器的

如何通过组策略为IE10/IE11添加收藏夹栏

如何通过组策略为IE10/IE11添加收藏夹栏 重所周知,在IE10之后微软在组策略取消了Internet Explorer维护选项,在最初的时候我们可以通过Internet Explorer维护来设置IE的收藏夹,主页等,但是到了客户端换成了IE10或者IE11之后或者活动目录DC换成了Windows Sever 2012之后就会发现设置Internet Explorer已经不生效了. 如下是旧版本最初的Internet Explorer维护设置收藏夹界面 下面我们介绍如何为IE10.IE11

兼容各浏览器的js判断上传文件大小

由于项目需要,在网上找了一个JS判断上传文件大小的程序,经测试兼容IE6-9,Firefox10,Opera11.6,safari5.1,chrome17 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>js判断上传文件的大小</titl

js 添加收藏

<a href="javascript:void(0)" onclick="AddFavorite('http://www.kaguo.com','卡果网')">添加收藏</a><script>// 手动function AddFavorite(sURL, sTitle) { try { window.external.addFavorite(sURL, sTitle); } catch (e) { try { window.si

js加入收藏夹

工作需要了解了一下点击加入收藏这个功能 <script> function _addFavorite() { var url = window.location; //获取当前网页网址 var title = document.title; //获取当前网页标题 var ua = navigator.userAgent.toLowerCase(); //获取当前浏览器 //判断浏览器版本 if (ua.indexOf("360se") > -1) { alert(&q

window.external.addFavorite 添加收藏夹的一些技巧

<a href="#" onclick="window.external.addFavorite('http://www.baidu.com','新闻发布网站');" >收藏本站</a> 其中a href="#" 没什么用,关键看后面的onClick事件 <script type="text/javascript">function AddFavorite(sURL, sTitle){   

LUA调用 Dll 添加收藏夹操作!!!IE Chrome

// AddFavorate.cpp : Defines the exported functions for the DLL application. // #include "stdafx.h" #include "atlbase.h" #include <iostream> #include <fstream> #include <string> #include "stdlib.h" #include

兼容IE浏览器的js浏览器全屏代码

众所周知,IE是个奇葩的浏览器,但是由于用户量很大,开发者还是不得不为IE考虑一下,于是,各种浏览器相关的操作,都要多一个特别的判断——专门针对IE浏览器的判断,这里的全屏也不例外.看代码: function fullScreen() { var el = document.documentElement; var rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.m