JavaScript之BOM

7 篇文章 0 订阅
5 篇文章 0 订阅

什么是BOM

BOM,Browser Object Model,即浏览器对象模型。浏览器页面初始化时,会在内存创建一个全局对象,用来描述当前窗口的属性和状态,如前进、后退、刷新等按钮。这个全局对象被称为浏览器对象模型。

window对象

alert()、confirm()、prompt()方法
		window.alert('ppt');
		var a=window.confirm('你确定要离开吗?');//confirm里面可以传参
		console.log(a);//点击弹窗的确定返回true,点击取消则返回false
		var called=window.prompt('你喜欢啥','艳儿');//'艳儿'是默认显示的内容
		console.log(called);
setInterval() 、 setTimeout()方法
		//setInterval() 是周期性循环操作 setTimeout()是延迟性操作
		 window.setTimeout(function(){
		 	console.log('ppt');
		 },2000);//里面传两个参数,第一个参数是函数,第二是是时间单位是毫秒
		// console.log('木子洋');//优先执行
		
		var num=0;
		 var timer=null;
		 timer=window.setInterval(function(){
		 	num++;
		 	if(num>5){
		 		clearInterval(timer);//清除现在开启的定时器
		 		return;//跳出条件
		 	}
		 	console.log('num:'+num);
		 },1500);//传两个参数,第一个参数是函数,第二个参数是周期间隔时间

location对象

location属性
//location属性
		console.log(location.host);//获取有端口号的服务器名称
		console.log(location.hostname);//获取无端口号的服务器名称
		console.log(location.href);//获取完整的url
		console.log(location.pathname);//获取url目录或者文件名
		console.log(location.port);//只获取端口号
		console.log(location.protocol);//获取网址协议,有两种 http: https:表示加密的,大部分都是加密
		console.log(location.search);//获取查询字符串
通过location.search属性访问每个查询字符串参数
function getQueryString(){
		//1.取得去掉问号的查询字符串   ?user=ppt&pwd=111
		var qs=location.search.length>0?location.search.substring(1):'';//2.取得每一项 存放到数组中
		var items=qs.length?qs.split('&'):[];//["user=ppt", "pwd=111"]
		var item=null,key=null,value=null,arr={};
		for (var i = 0; i < items.length; i++){
			item=items[i].split('=');//["user", "ppt"] ["pwd", "1111"]
			key=decodeURIComponent(item[0]);
			value=decodeURIComponent(item[1]);
			if(key.length){
				arr[key]=value;
			}
		}
		return arr;
		}
位置操作
// 位置操作 
		//2s之后跳转到博客页面
		setTimeout(function(){
			location.href='https://www.cnblogs.com/heganlin/p/5758078.html';
			location.replace('https://www.cnblogs.com/heganlin/p/5758078.html');//回不到之前的页面了,不会产生历史记录
			location.reload();//每2s之后重新加载整个网页,比较少用
		},2000);

navigator对象

	//navigator对象
		console.log(navigator.plugins);
		var flag=2;
		var count=0;
		function hasPlugins(name){
			//如果有插件返回true
			name=name.toLowerCase();
			for(var i=0;i<navigator.plugins.length;i++){
				if(navigator.plugins[i].name.toLowerCase().indexOf(name)>-1){
					//有这个插件
					flag=1;
					// return true;
				}else{
					flag=0;
					count++;
					// return false;
				}
				if(flag===1){
					return true;
				}else if(flag===2){
					return false;
				}else if(count==navigator.plugins.length){
					return false;
				}
			}
		}
		alert(hasPlugins('Native Client'));

history对象

//history对象
		console.log(history);
		var count=0;
		setTimeout(function(){
			count++;
			console.log(count);
			history.go(0);//如果是0则表示刷新,如果是1,相当于前进一次。如果是-1,相当于后退两次
		},2000);
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值