兼容Firefox(火狐)浏览器和IE浏览器的收藏代码

 最近改用Firefox后,发现很多网站的“加入收藏”链接点击无效了,后来发现原来是IE浏览器和Firefox浏览器的“加入收藏夹”的写法是不同的。
  1、IE浏览器加入收藏夹的代码

  window.external.addFavorite(sURL, sTitle);
  参数:
  sURL:添加到收藏夹的完整网站页面地址
  sTitle:添加到收藏夹中的网站页面标题名称。

  示例:
  <a href='#' onClick="javascript:window.external.AddFavorite('http://www.sdi1.com', '白金帐号主题站');">加入收藏</a>


  2、Firefox浏览器加入收藏夹的代码

  Firefox中叫做加入书签(收藏夹),代码有两种方式,一种同IE浏览器的方法类似,只不过是window.external.AddFavorite换成了sidebar.addPanel,另外一种却十分简单,只需要加一个参数就可以了。

  第一种方法:

  window.sidebar.addPanel(sTitle, sURL, "");
  参数
  sURL:收藏的网站页面完整连接
  sTitle:收藏网站页面的名称

  示例:
  <a href='#' onClick="javascript:window.sidebar.addPanel('白金帐号主题站','http://www.sdi1.com','');">收藏本站</a>
这里要注意,addPanel函数的参数顺序与addFavorite刚好是相反的。

  第二种方法:

  在链接上添加rel="sidebar"属性

  示例:
<a href=http://www.sdi1.com title="白金帐号主题站" rel="sidebar">收藏本站</a>
注意:这里的title属性就是收藏网站页面的名称。

3、兼容Firefox和IE浏览器的方法

既然Firefox提供了两种方式,那么我们兼容Firefox和IE浏览器也可以用两种方法了。

第一种方法:

这里用了一个变通的方式来解决这个问题,代码比较清晰。这个是最好的方式了!

<mce:script type="text/javascript"><!-- function addfavorite() { if (document.all) { window.external.addFavorite('http://www.sdi1.com','白金帐号主题站'); } else if (window.sidebar) { window.sidebar.addPanel('白金帐号主题站', 'http://www.sdo1.com', ""); } } // --></mce:script> <a href="#" mce_href="#" onclick="addfavorite()">加入收藏</a>

   第二种方法:

  这个是最简单的一个方法了,只有一句话。

  <a href="http://weste.net" mce_href="http://weste.net" onClick="javascript:window.external.AddFavorite('http://www.sdi1.com','白金帐号主题站');" title="白金帐号主题站" rel="sidebar">收藏本站</a>
但是这种方法有些问题,就是在IE下会同时打开链接中的地址。那么我们来优化一下!

   <a href="http://www.sdo1.com/" mce_href="http://www.sdo1.com/" onclick="window.external.addFavorite(this.href,this.title);return false;" title='白金帐号主题站' rel="sidebar">加入收藏</a>

  这样就没问题啦,哈哈!同时兼容IE6、IE7、Firefox、Opera等浏览器。

你可能感兴趣的:(JavaScript,优化,浏览器,Opera,IE,firefox)