zoukankan      html  css  js  c++  java
  • js——navigator,screen,history对象(BOM 3)

    navigator对象

    识别客户端浏览器的事实标准,每个浏览器的navigator对象都有自己的一套属性,但也有一些共通的属性。

    • 插件检测

      • 对于非IE浏览器,可以使用plugins数组来检查浏览器是否安装了常见的插件。该数组每一项都包含以下属性:

        1. name:插件名
        2. description:插件描述
        3. filename:插件的文件名
        4. length:插件所处理的MIME类型数量
        //检测插件IE中无效
        	function hasPlugin(name){
        		var name=name.toLowerCase();
        		for(var i=0;i<navigator.plugins.length;i++)
        		{
        			if(navigator.plugins[i].name.toLowerCase().indexOf()>-1)
        				return true;
        		}
        		return false;
        	}
        
      • 对于IE,检查插件的方式是ActiveXObject类型,IE是以COM对象的方式实现插件的,而COM对象使用唯一表示符来标识。

        //检测IE中的插件,name是插件标识符
        	function hasIEPluhin(name){
        		try{
        			new ActiveXObject(name);
        			return true;
        
        		}catch(err){
        			return false;
        		}
        	}
        
        
      • 对于所有浏览器来说,前两种检测方法差别太大,检查插件的经典方法是每种插件有专门的检测函数

        //检测插件IE中无效
        	function hasPlugin(name){
        		var name=name.toLowerCase();
        		for(var i=0;i<navigator.plugins.length;i++)
        		{
        			if(navigator.plugins[i].name.toLowerCase().indexOf()>-1)
        				return true;
        		}
        		return false;
        	}
        	//检测IE中的插件,name是插件标识符
        	function hasIEPluhin(name){
        		try{
        			new ActiveXObject(name);
        			return true;
        
        		}catch(err){
        			return false;
        		}
        	}
        
        	//检测所有浏览器中的Flash
        	function hasFlash(){
        		var result=hasPlugin("Flash");
        		if(!result){
        			result=hasIEPluhin("ShockwaveFlash.ShockwaveFlash");
        		}
        		return result;
        	}
        	alert(hasFlash());
        
    • 注册处理程序

      可以让一个站点指明它可以处理的特定的类型信息,之后再详细介绍。

      • registerContentHandler()
      • registerProtocolHandler()

    screen对象

    用来表明客户端的能力,包括浏览器窗口外部显示器信息,如像素宽高度等。不同的浏览器可能有不同的属性,但是还是有很多属性是相同的

    这些属性可以用来调整浏览器窗口大小,比如浏览器占屏幕的百分之多少。

    window.resizeTo(screen.availWidth,screen.availHeight)
    

    history对象

    history对象保存着用户从打开窗口开始的上网的历史记录。history是window对象的属性,每个浏览器窗口,框架都有自己的history和window相关联。开发人员不能通过history知道用户浏览过的url,但可以借用用户的url列表,在不知道实际url的情况下就行后退和前进。

    //后退一页
    history.go(-1);
    
    //前进两页
    history.go(2);
    
    //跳转到www.baidu.com,如果url列表中有这条记录,就跳转过去,没有就什么也不做
    history.go("http://www.baidu.com");
    
    //模仿前进和后退
    //前进一页
    history.forward();
    //后退一页
    history.back();
    

    还有一个history.length保存着浏览记录的数量,可用来测定当前页面是不是第一个页面等。

  • 相关阅读:
    php基本文件操作````
    PHP+JS无限级可伸缩菜单详解(递归方法)
    php 服务器快速搭建
    PHP编码转换函数
    php生成html分页方法-----ob篇
    gcc
    虚拟地址_物理地址_逻辑地址_页表_内存映射
    GCC动态库和静态库混合使用
    Linux下GCC生成和使用静态库和动态库详解(二)
    Linux下GCC生成和使用静态库和动态库详解(一)
  • 原文地址:https://www.cnblogs.com/ellen-mylife/p/11371888.html
Copyright © 2011-2022 走看看