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 ...
随机推荐
- 一个简单的示例在spring boot中实现国际化
最近在网上找了一个有关账单管理的spring boot项目,其中有一部分是涉及显示国际化信息的,即将页面上的中英文进行转换.因为在这之前这部分内容没有接触过,所以在这记录下过程. 中文效果图如下所示: ...
- 《Dotnet9》建站-建站20天感悟
时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...
- 后缀数组SA入门(史上最晦涩难懂的讲解)
参考资料:victorique的博客(有一点锅无伤大雅,记得看评论区),$wzz$ 课件(快去$ftp$%%%),$oi-wiki$以及某个人的帮助(万分感谢!) 首先还是要说一句:我不知道为什么我这 ...
- python中几种自动微分库
简单介绍下python的几个自动求导工具,tangent.autograd.sympy: 在各种机器学习.深度学习框架中都包含了自动微分,微分主要有这么四种:手动微分法.数值微分法.符号微分法.自动微 ...
- 部署flas到服务器:No module named flask
首先,你要先把nginx和uwsgi安装好(个人觉得这搭起来比较舒服),可以通过pip 或者源安装,具体方法在前面我有提到过,好了接下来我就讲讲我的踩坑经历与解决办法. 我先采用的pip insta ...
- java基础 - 锁
------------------------ 参考: https://www.cnblogs.com/hustzzl/p/9343797.html https://blog.csdn.net/qq ...
- IT兄弟连 HTML5教程 DIV+CSS网页标准化布局的优势
标准的网页都需要对内容进行布局,以前都是采用表格的定位技术,从2005年开始逐步转向DIV+CSS的布局方式,目前绝大多数的网站都是采用这种布局方式.使用DIV+CSS对网站进行布局符合W3C标准,采 ...
- IT兄弟连 HTML5教程 CSS3属性特效 3D变换1
3D变换较2D变换多了一下的转换属性,3D转换属性及描述如表1: 表1 3D转换属性 3D的转换方法如表2: 表2 3D转换方法 1 transform-style transform- ...
- HttpRunner学习1--Windows&Linux安装httprunner
最近在学习HttpRunner,这是一款开源的接口测试框架,可用于HTTP(S)协议的接口测试.通过该框架,我们只需维护一份 YAML/JSON 脚本,即可轻松的进行接口自动化. 更多的介绍,大家可以 ...
- 【网络安全】SSH协议科普文
写代码的木公 本文转载自:https://baijiahao.baidu.com/s?id=1612411213158569988&wfr=spider&for=pc 熟悉Linux的 ...