当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js Firefox 加入收藏夹功能代码 兼容Firefox 和 IE

Javascript
jQuery开发者都需要知道的5个小技巧
Extjs学习笔记之六 面版
Javascript 中的类和闭包
IE6下JS动态设置图片src地址问题
Extjs学习笔记之七 布局
Extjs学习笔记之八 继承和事件基础
Extjs TriggerField在弹出窗口显示不出问题的解决方法
JavaScript中的集合及效率
利用js获取服务器时间的两个简单方法
在html页面上拖放移动标签
了解jQuery技巧来提高你的代码
JavaScript 页面坐标相关知识整理
Javascript UrlDecode函数代码
JQuery 遮罩层实现(mask)实现代码
jQuery 页面 Mask实现代码
Javascript的构造函数和constructor属性
js或css文件后面跟参数的原因说明
将CKfinder整合进CKEditor3.0的新方法
jQuery UI-Draggable 参数集合
jQuery 行级解析读取XML文件(附源码)

Javascript 中的 js Firefox 加入收藏夹功能代码 兼容Firefox 和 IE


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 114 ::
收藏到网摘: n/a

最近改用Firefox后,发现很多网站的“加入收藏”链接点击无效了,后来发现原来是IE浏览器和Firefox浏览器的“加入收藏夹”的写法是不同的。 1、IE浏览器加入收藏夹的代码
  window.external.addFavorite(sURL, sTitle);
参数:
sURL:添加到收藏夹的完整网站页面地址
sTitle:添加到收藏夹中的网站页面标题名称。
  示例:
<a href='#' onClick="javascript:window.external.AddFavorite('http://www.domain.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.domain.com','');">收藏本站</a>
这里要注意,addPanel函数的参数顺序与addFavorite刚好是相反的。
  第二种方法:
  在链接上添加rel="sidebar"属性
  示例:
<a href=http://www.domain.com title="名字" rel="sidebar">收藏本站</a>
注意:这里的title属性就是收藏网站页面的名称。
3、兼容Firefox和IE浏览器的方法
既然Firefox提供了两种方式,那么我们兼容Firefox和IE浏览器也可以用两种方法了。
第一种方法:
这里用了一个变通的方式来解决这个问题,代码比较清晰。这个是最好的方式了!

[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

需要注意的是ie是域名在前面,firefox是域名在后门,最后留一个空字符。
第二种方法:
  这个是最简单的一个方法了,只有一句话。
  <a href='http://www.domain.com' onClick="javascript:window.external.AddFavorite('http://www.domain.com',' 名字');" title="名字" rel="sidebar">收藏本站</a>
但是这种方法有些问题,就是在IE下回同时打开链接中的地址。那么我们来优化一下!
  <a href="www.domain.com/" onclick="window.external.addFavorite(this.href,this.title);return false;" title='名字' rel="sidebar">加入收藏</a>
  这样就没问题啦,哈哈!同时兼容IE6、IE7、Firefox、Opera等浏览器。
更多的兼容性更好的代码,可以搜索软晨学习网以前的文章。