zoukankan      html  css  js  c++  java
  • 浅谈window.sidebar

    本文要点:

    1)         Window.sidebar是个什么东东?

    2)         采用何种规范?

    3)         提供哪些方法?

    4)         各自的用途局限?

    5)         哪些360的产品用到了?

    6)         兼容主流浏览器的【加入收藏】实例

    一、Window.sidebar简介

    是一种文档对象模型,返回侧边栏的对象,其中包含浏览器加载项注册的几种方法

    例子:window.sidebar.addPanel(”360安全中心”,http://www.360.cn/,””);

     注:第三个空参数是必需的!

    二、规范

    Mozilla的规范,不属于任何标准来衡量

    三、 Window.sidebar对象方法

      侧边栏返回的对象有以下几种方法:

    方法

    描述

    addPanel(title,contentURL,customizeURL)

    添加了一个侧边栏面板.创建一个Firefox侧边栏在Firefox 2和更高版本的侧边栏的详细信息.

    addPersistentPanel(title,contentURL,customizeURL)

    添加侧边栏面板,这是能够在后台工作。SeaMonkey的或Firefox 1.x的这唯一的作品;Firefox 2和以后只会做addPanel().

    addSearchEngine(engineURL,iconURL,suggestedTitle,suggestedCategory)

    安装一个搜索引擎。从网页中添加搜索引擎的细节.

    addMicrosummaryGenerator(generatorURL)需要的Gecko 1.8.1

    安装一个microsummary发电机.

    四、各方法的用途局限

       1. 不是所有的浏览器都支持window.sidebar

         如:ie使用:window.external.addFavorite()

                 Firefox使用:window.sidebar.addPanel()

                其他浏览器没有此功能

       2. 使用情况来说:addPanel()使用的较多,其他方法较少

       3. 其他主流浏览器(chrome、opera、safari)不能使用该对象,不过可以提醒用户使用ctrl+d的方法手动添加

    五、运用该对象的360产品

    1)    360游戏导航

      

    2)    360搞笑、笑话 

      

    六、兼容主流浏览器的【加入收藏】实例

      兼容FirefoxIEchromesafariopera浏览器的方法

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

      第一种方法:

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

    View Code
    <script type="text/javascript">
    
    function addFavorite(){
    
          var title = document.title;
    
          var URL = document.URL;
    
    //   alert(title+" ==> "+URL);
    
          try {
    
               window.external.addFavorite(URL, title);          //ie
    
          } catch(e) {
    
               try {
    
                     window.sidebar.addPanel(title, URL, "");     //firefox
    
               } catch(e) {
    
                     alert("加入收藏失败,请使用Ctrl+D进行添加");     //chrome opera safari
    
               }
    
          }
    
    }
    
    </script><a href="#" onclick="addfavorite()">加入收藏</a>

      第二种方法:

      此方法必须手动写入href 和 title,例子如下:

    View Code
    <a href="http://www.360.cn"
    
    onclick="try{window.external.addFavorite(this.href,this.title);}catch(e){alert('加入收藏失败,请使用Ctrl+D进行添加');} return false;" title="360安全中心" rel="sidebar">加入收藏</a>
  • 相关阅读:
    .net core 发布iis 错误
    windows下grunt安装提示不成功
    个人随笔
    跟人备忘
    CSS中的高度和宽度
    编程语言的阴阳之争
    [数据模型] 数据表三种关联的概述
    MySQL server has gone away 问题的解决方法
    Java中PreparedStatement和Statement的用法区别
    Java 程序在执行时的内存划分区域
  • 原文地址:https://www.cnblogs.com/xiaoheimiaoer/p/2628358.html
Copyright © 2011-2022 走看看