BOM介绍以及方法
- BOM介绍和window对象的方法
一、BOM对象
(浏览器对象模型 BOM)
1、window alert() confirm() prompt() setInterval() setTimeout()
2、location herf hash url ...
3、screen
4、history go()
二、window方法
1、alert()
alert('派大星');
2、confirm()
var a = window.confirm('你确定要离开网站吗?');
console.log(a);
3、prompt()
var name = window.prompt('今天吃了什么?','海绵宝宝');
//前面是输入,后面是默认
console.log(name);
- 定时器方法
一、setTimeout() 延迟性操作
1 window.setTimeout(function(){
2 console.log('派大星');//延迟了4秒
3 },4000);
4 console.log('海绵宝宝');
5
6 //定时器 异步运行
7 function hello(){
8 alert("hello");
9 }
10
11 var t1 = window.setTimeout(hello,1000);//使用方法名字执行方法
12 var t2 = window.setTimeout("hello()",3000);//使用字符串执行方法
二、setInterval() 定时输出
1 var num = 0;
2 var timer = null;
3 timer = setInterval(function(){
4 num++;
5 if(num>5){
6 clearInterval(timer);
7 return;
8 }
9 console.log('num:'+num);
10 },1000);//1秒输出一次
11
12
13 //实时刷新 时间单位为毫秒
14 setInterval('refreshQuery()',8000);
15 /* 刷新查询 */
16 function refreshQuery(){
17 console.log('每8秒调一次')
18 }
- location对象
window.location可以简写成location。location相当于浏览器地址栏,可以将url解析成独立的片段。
一、属性
1 console.log(location.host);//主机名,包括端口
2 console(location.hostname);//主机名
3 console.log(location.href); //完整的url(网址)
4 console.log(location.pathname); //文件名(url中的部分路径)
5 console.log(location.port); //端口号
6 console.log(location.protocol); //协议(HTTP、https)
7 console.log(location.search) //提交的text(查询字符串)
二、location 每个查询字符串参数获取方法
1、一个地址
1 HTML、CSS、JS文件代码/BOM代码文件/04 location对象的常用属性.html?user=aaa&pwd=123
2
3 //?user=aaa&pwd=123
2、取得去掉问号的查询字符串
1 var qs = location.search.length > 0? location.search.substring(1) : '';//user=aaa&pwd=123
2 //从索引 1 开始取到后面的字符
3、将取到的字符串且分开
1 var items = qs.length? qs.split('&') : [];//['user=aaa','pwd=123']
4、定义参数
1 var item = null,//装 items 中的元素
2 name = null,//装 item 中的名字
3 value = null,//装名字对应的值
4 args = {};//装结果
5、循环取出 items 中的值进行操作
1 for(i = 0;i<items.length;i++){
2 item = items[i].split('=');//['name','aaa']等号分隔开
3 name = decodeURIComponent(item[0]);
4 value = decodeURIComponent(item[1]);
5 if(name.length){
6 args[name] = value;
7 }
8 }
9 console.log(args);//示例:{user: "派大星", pwd: "cz"}
6、用函数进行封装一下
1 function userPwd(){
2 //1、取得去掉问好的查询字符串
3 var qs = location.search.length > 0? location.search.substring(1) : '';//user=aaa&pwd=123
4 var items = qs.length? qs.split('&') : [];//['user=aaa','pwd=123']
5 var item = null,name = null,value = null,args = {};
6 for(i = 0;i<items.length;i++){
7 item = items[i].split('=');//['name','aaa']
8 name = decodeURIComponent(item[0]);
9 value = decodeURIComponent(item[1]);
10 if(name.length){
11 args[name] = value;
12 }
13 }
14 return args;
15 }
16 var newUserPwd = userPwd();
17 console.log(newUserPwd);
- 设置跳转、刷新网页
setTimeout(function(){
location.href = 'https://www.cnblogs.com/songhaixing/';
//跳转有历史记录
location.replace('https://www.cnblogs.com/songhaixing/');
//跳转没有历史记录
location.reload();//两秒后重载网页(刷新)
},2000)
- 检测浏览器上的插件
一、navigator对象(插件检测)
console.log(navigator.plugins);//查看浏览器里安装了的所有插件
function hasPlugin(name){
//如果有插件 返回true 反之亦然
name = name.toLowerCase();//转成小写方便比较
for(var i = 0;i < navigator.plugins.length;i++){
if(navigator.plugins[i].name.toLowerCase().indexOf(name) > -1){
//循环取出来的第i 个插件的名字的小写,然后找出名字的索引,大于-1 表示存在
return true;
}else{
return false;
}
}
}
alert(hasPlugin('asdas'));//false,没有这个插件
alert(hasPlugin('Chromium PDF Viewer'));//true 有这个插件
- history对象
延时 刷新 / 前进 / 后退
var count = 0;
setTimeout(function(){
count++;
console.log(count); // 计算次数
history.go(0);//刷新
history.go(1);//正数前进
history.go(-2);//负数后退
},2000)//两秒 刷新/前进/后退
BOM介绍以及方法的更多相关文章
- 详解BOM头以及去掉BOM头的方法
类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM).它是一串隐藏的字符,用于让记事本等编辑器识别 ...
- 详解BOM头以及去掉BOM头的方法--踩过BOM的大坑
类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM).它是一串隐藏的字符,用于让记事本等编辑器识别 ...
- bom头解释方法和去掉方法
什么是bom头? 在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也 ...
- 介绍array_multisort方法
介绍array_multisort方法 array_multisort — 对多个数组或多维数组进行排序.其php 手册中的说明如下: 代码如下: bool array_multisort ( ar ...
- python每个文件都需要顶部注释,那今天介绍一个方法,只需要设置一次,下次新建python文件后,注释自动出现在顶部的方法
python每个文件都需要顶部注释,那今天介绍一个方法,只需要设置一次,下次新建python文件后,注释自动出现在顶部的方法 只需要在file -----settings------file and ...
- Day047--JS BOM介绍, jQuery介绍和使用
内容回顾 DOM 文档对象模型(model) 一个模型就是一个对象(属性和方法 面向对象的三大特性:封装 继承 多态) 为了可扩展性 DOM操作 标签属性操作 获取值 getAttribute() 设 ...
- paper 6:支持向量机系列三:Kernel —— 介绍核方法,并由此将支持向量机推广到非线性的情况。
前面我们介绍了线性情况下的支持向量机,它通过寻找一个线性的超平面来达到对数据进行分类的目的.不过,由于是线性方法,所以对非线性的数据就没有办法处理了.例如图中的两类数据,分别分布为两个圆圈的形状,不论 ...
- BOM介绍
BOM 浏览器对象模型 BOM (Browser Object Model,浏览器对象模型)提供了通过 JavaScript 访问和控制浏览器窗口(window).显示器(screen)与浏览历史(h ...
- BOM的节点方法和属性
一.HTML DOM >>>>>>>>>>>>>>>>>>>>具体可以参考W3S ...
随机推荐
- Python异常体系结构图
- CSS3新特性简单总结(持续补充常用到的情景)
1.CSS3边框border-radius 左上右下box-shadow box-shadow: 水平阴影(可负值,必) 垂直阴影(可负值,必) 模糊距离 阴影尺寸 颜色颜色 inset(将外部阴影改 ...
- hdu 6298 Maximum Multiple (简单数论)
Maximum Multiple Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- 《Java知识应用》Java-线程池(ScheduledExecutorService)
先回顾一下,Runnable 的使用方法. package demo.knowledgepoints.scheduledtask.run; /*** * 线程类 */public class Thre ...
- IDC:助力转型、深入变革:中国云专业服务市场持续升温
来源:IDC 北京,2019 年 10 月 24 日——随着云计算在中国市场更深入和广泛的应用,与云相关的专业服务(咨询.迁移.开发与建设服务)需求旺盛.IDC 首次发布的<2019 年上半年云 ...
- 「SAP技术」SAP VL02N 执行批次拆分报错,说不允许批次拆分?
1,如下新建的DN 80017843,storage location 字段值为空.VL02N 试图去做批次拆分失败,系统报错说,Batch split is not permitted for ma ...
- 无法Google的解决方案
献给新入开发行业的小伙伴. 本文不会事无巨细的讲解每一个细节,只是为读者提供一个路线图,并提供相应的参考资料. 为了更高效的解决各种技术问题,有时不得不到墙外去寻找解决方案.每个开发者效率高了,宏观来 ...
- Mac 停止redis服务
停止redis服务: redis-cli shutdown 开始redis服务: redis-server
- CODING 代码多仓库实践
关于代码的管理问题已经讨论多年,随着企业业务的复杂度提高.软件行业技术栈的选择度变宽泛,现代软件的代码仓库也变得越来越庞大和复杂.一个中型项目,将测试代码.核心业务代码.编译构建.部署打包等基础设施的 ...
- MSSQL - 最佳实践 - 使用SSL加密连接
MSSQL - 最佳实践 - 使用SSL加密连接 author: 风移 摘要 在SQL Server安全系列专题月报分享中,往期我们已经陆续分享了:如何使用对称密钥实现SQL Server列加密技术. ...