魏解之谜 2011-11-21 09:57
浏览 208
已采纳

有关设置首页和加入收藏的问题

如果不考虑兼容问题,只是在IE上弄这个,就很简单,随便写个JS代码就可以搞定。一旦考虑兼容问题,我就尴尬了。哪位高手能帮我解决在不同浏览器都能做到“设为首页”和“加入收藏”这个难题呀!小弟讲不胜感激!分不多,请笑纳。
  • 写回答

2条回答 默认 最新

  • huoyj 2011-11-21 13:19
    关注

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

      1、IE浏览器加入收藏夹的代码

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

      示例:
      加入收藏

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

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

      第一种方法:

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

      示例:
      收藏本站
    这里要注意,addPanel函数的参数顺序与addFavorite刚好是相反的。

      第二种方法:

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

      示例:
    收藏本站
    注意:这里的title属性就是收藏网站页面的名称。

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

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

    第一种方法:

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

    function addfavorite() { if (document.all) { window.external.addFavorite('http://www.skycn.com','天空软件站'); } else if (window.sidebar) { window.sidebar.addPanel('天空软件站', 'http://www.skycn.com', ""); } }

    加入收藏

       第二种方法:

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

      收藏本站
    但是这种方法有些问题,就是在IE下回同时打开链接中的地址。那么我们来优化一下!

      加入收藏

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP