第189天:BOM属性方法
一、BOM---location
1、访问页面
location.href = "http://www.baidu.com";
location.assign("http://www.baidu.com");
location.replace("http://www.baidu.com");
replace和assign的区别
replace()方法所做的操作与assign()方法一样,
但它多了一步操作,即从浏览器的历史记录中删除了包含脚本的页面,
这样就不能通过浏览器的后退按钮和前进按钮来访问它了,
assign()方法却可以通过后退按钮来访问上个页面。
2、刷新页面
//刷新页面
document.getElementsByTagName('button')[1].onclick = function(){
location.reload(true); //从服务器重载当前页面
location.reload(false); //从浏览器缓存中重载当前页面
location.reload(); //从浏览器缓存中重载当前页面
}
3、其他属性
(1) hash:如果URL中包含有“#”,该方法将返回该符号之后的内容
(例如:http://www.itcast.cn/index.html#welcome的hash是“#welcome”)。
(2) host:服务器的名字,例如www.baidu.com。
(3) hostname:通常等于host,有时会省略前面的www。
(4) href:当前页面载入的完整URL。
(5) pathname:URL中主机名之后的部分。例如:http://www.leledeng.com/html/js/index.html的pathname是“/html/js/index.html”。
(6) port:URL中声明的请求端口。默认情况下,大多数URL没有端口信息(默认为80端口),所以该属性通常是空白的。像http://www.leledeng.com:8080/index.html这样的URL的port属性为8080。
(7) protocol:URL中使用的协议,即双斜杠(//)之前的部分。例如http://www.itcast.cn中的protocol属性是http:
(8) ftp://www.leledeng.com的protocol属性等于ftp:。
(9)search:执行GET请求的URL中的问号?后的部分,又称查询字符串。
// 例如http://www.leledeng.com/search.html?name=lele中的search属性为?name=lele。
二、BOM---history
<body>
<input type=button value=刷新 onclick="window.location.reload()">
<input type=button value=前进 onclick="window.history.go(1)">
<input type=button value=后退 onclick="window.history.go(-1)">
<input type=button value=前进 onclick="window.history.forward()">
<input type=button value=后退
onclick="window.history.back()">
<input type=button value=后退+刷新
onclick="window.history.go(-1);window.location.reload()">
</body>
三、BOM---navigator
<script>
// 利用userAgent属性判断是哪个浏览器
function CheckBrowser(){
var u_agent = navigator.userAgent;
var browser_name='未知浏览器';
if(u_agent.indexOf('Firefox')>-1){
browser_name='Firefox';
}else if(u_agent.indexOf('Chrome')>-1){
browser_name='Chrome';
}else if(u_agent.indexOf('Trident')>-1&&u_agent.indexOf('rv:11')>-1){
browser_name='IE11';
}else if(u_agent.indexOf('MSIE')>-1&&u_agent.indexOf('Trident')>-1){
browser_name='IE(8-10)';
}else if(u_agent.indexOf('MSIE')>-1){
browser_name='IE(6-7)';
}else if(u_agent.indexOf('Opera')>-1){
browser_name='Opera';
}else{
browser_name+=',info:'+u_agent;
}
document.write('浏览器类型为:'+browser_name+'<br>');
document.write('userAgent属性值为:'+u_agent+'<br>');
} CheckBrowser();
</script>
四、BOM---document
<script>
//对象集合属性
document.write("文档包含:"+document.forms.length+"个表单"+"<br />");
//forms[]对象集合统计表单个数
document.write(document.all.length+"<br />");//
document.write(document.links[0]);//输出:http://www.baidu.com/
</script>
第189天:BOM属性方法的更多相关文章
- 前端面试题-几个很实用的BOM属性对象方法?
什么是Bom? Bom是浏览器对象.有哪些常用的Bom属性呢? (1)location对象 location.href-- 返回或设置当前文档的URL location.search -- 返回URL ...
- HTML5 Audio/Video 标签,属性,方法,事件汇总
HTML5 Audio/Video 标签,属性,方法,事件汇总 (转) 2011-06-28 13:16:48 <audio> 标签属性:src:音乐的URLpreload:预加载au ...
- python7 静态方法、类方法、属性方法 ;反射;异常处理
#-*- coding:utf8 -*- # 静态方法@staticmethod # 静态方法(当eat变成静态方法后,再通过实例调用时就不会自动把实例本身当作一个参数传给self了.) clas ...
- Delphi中TStringList类常用属性方法详解
TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的. 常规的用法大家都知道,现在来讨论它的一些高级的用法. 先把要讨论的几个属性列出来: 1.CommaText 2.Delim ...
- React-Native的基本控件属性方法
对React-Native的学习,从熟悉基本控件开始. View 属性方法 序号 名称 属性Or方法 类型 说明 1 accessibilityLabel 属性 string 2 accessib ...
- 常用元素的属性/方法 attr / val / html /text
常用元素的属性/方法 得到一个元素的高度, $("#myid").height() 得到一个元素的位置, $("#myid").offset() 返回的是一个o ...
- List的方法和属性 方法或属性 作用
List的方法和属性 方法或属性 作用 Capacity 用于获取或设置List可容纳元素的数量.当数量超过容量时,这个值会自动增长.您可以设置这个值以减少容量,也可以调用trin()方法来减少容量以 ...
- iOS对UIViewController生命周期和属性方法的解析
目录[-] iOS对UIViewController生命周期和属性方法的解析 一.引言 二.UIViewController的生命周期 三.从storyBoard加载UIViewController实 ...
- HTML5 Audio/Video 标签,属性,方法,事件汇总 (转)
HTML5 Audio/Video 标签,属性,方法,事件 <audio> 标签属性:src:音乐的URLpreload:预加载autoplay:自动播放loop:循环播放contro ...
随机推荐
- dedecms 顶级栏目内容显示
在需要的位置,添加: {dede:sql sql='Select content from dede_arctype where id=1'} [field:content/] {/dede:sql}
- [agc010D]Decrementing-[。。。思考题]
Description 传送门 Solution 真是够神秘的啊... Alice和Bob两个真的城会玩. 不过本题一个暗示挺明显的.就是黑板上所有数不论何时gcd为1. 考场上我以为会很复杂,结果. ...
- Java——RMI
之前分布式系统调用用的是比较老的EJB,当时还是作为服务调用方,去调用别的系统的服务.最近发现新公司里面,用的是RMI,查了下发现EJB的底层实现就是RMI,也算是熟悉了... 一,使用JDK 中的R ...
- day1 Ubuntu 使用
ctrl + shift + + 放大终端 ctrl + - 缩小终端 软连接,硬链接 ln python@ubuntu:~/Desktop$ vim .txt python@ubuntu ...
- 【LG3236】[HNOI2014]画框
[LG3236][HNOI2014]画框 题面 洛谷 题解 和这题一模一样. 将最小生成树换成\(KM\)即可. 关于复杂度,因为决策点肯定在凸包上,且\(n\)凸包的期望点数为\(\sqrt {\l ...
- 关于解决idea 输入法不跟随问题
网上查了很多方法 自己试验了一种方式 jdk版本采用的是 java version "1.8.0_191"Java(TM) SE Runtime Environment (bui ...
- Spring学习(二)-----eclipse新建spring项目
一:准本工作(下载需要的jar包) 1.下载准备Spring-framework-4.2.0 链接为: http://repo.springsource.org/libs-release-local/ ...
- clean code(一)
代码整洁之道对于程序的重构及可读性至关重要.开始整洁之道吧!!! 一.抽离try catch 模块 public void delete(Page page){ try { deletePageAnd ...
- cinder的组件
跟nova相似,cinder也有很多组件,每个组件负责各自的业务,然后共同协作完成volume的管理.组件之间的通信方式与nova个组件之间的通信方式相同,都是通过消息队列进行通信. cinder-a ...
- Could not resolve placeholder 'jdbc.url' in value "${jdbc.url}"
写完接口之后,发现报了这个错误,查了一下发现,spring不允许使用两个 <context:property-placeholder>