首页 > 编程语言 > 详细

JavaScript进阶(八)

时间:2017-01-26 16:28:29      阅读:277      评论:0      收藏:0      [点我收藏+]
 forward()方法,加载history列表中的下一个URL
如果倒退之后,再想回到倒退之前浏览的页面,则可以使用forward()方法。代码如下:
window.history.forward();
注意:等价点击前进按钮
forward()相当于go(1)代码如下:
window.history.forward();
返回浏览历史中的其他页面用go()方法,根据当前所处的页面,加载history列表中的某个具体的页面。
语法:
window.history.go(number);
参数:
number 参数说明
1 前一个,go(1)等价forward()
0 当前页面
-1 后一个,go(-1)等价back()
其他数值 要访问的URL在History的URL列表中的相对位置
浏览器中,返回当前页面之前浏览过的第二个历史页面,代码如下:
window.history.go(-2);
注意:和在浏览器中单机两次后退按钮操作一样
同理,返回当前页面之后浏览过的第三个历史页面,代码如下:
window.histroy.go(3);
location用于获取或设置窗体的URL,并且可以用于解析URL
语法:
location.[属性|方法]
location对象属性:
属性 描述
hash 设置或返回从井号(#)开始的URL(锚)
host 设置或返回主机名和当前URL的端口号
hostname 设置或返回当前URL的主机名
href 设置或返回完整的URL
pathname 设置或返回当前URL的路径部分
port 设置或返回当前URL的端口号
protocol 设置或返回当前URL的协议
search 设置或返回从问号(?)开始的URL(查询部分)
location对象方法:
属性 描述
assign() 加载新的文档
reload() 重新加载当前文档
replace() 用新的文档替换当前文档
Navigator对象包含有关浏览器的信息,通常用于检测浏览器与操作系统的版本。
对象属性:
属性 描述
appCodeName 浏览器代码命的字符串表示
appName 返回浏览器的名称
appVersion 返回浏览器的平台和版本信息
platform 返回运行浏览器的操作系统平台
platform 返回运行浏览器的操作系统平台
userAgent 返回由客户机发送服务器的user-agent头部的值
查看浏览器的名称和版本,代码如下:
<srcipt type="text/javascript">
 var browser=navigator.appName;
 var b_version=navigator.appVersion;
 document.write("Browser name"+browser);
 document.write("<br>");
 document.write("Browser version"+b_version);
</script>
返回用户代理头的字符串表示(就是包括浏览器版本信息等的字符串)
语法:
navigator.userAgent
集中浏览器的user_agent,像360的兼容模式用的是IE、极速模式用的是chrom的内核
使用userAgent判断使用的是什么浏览器(假设使用的是IE8浏览器),代码如下:
function validB(){ 
  var u_agent = navigator.userAgent; 
  var B_name="Failed to identify the browser"; 
  if(u_agent.indexOf("Firefox")>-1){ 
      B_name="Firefox"; 
  }else if(u_agent.indexOf("Chrome")>-1){ 
      B_name="Chrome"; 
  }else if(u_agent.indexOf("MSIE")>-1&&u_agent.indexOf("Trident")>-1){ 
      B_name="IE(8-10)";  
  }
    document.write("B_name:"+B_name+"<br>");
    document.write("u_agent:"+u_agent+"<br>"); 
screen对象用于获取用户的屏幕信息。
语法:
window.screen.属性
对象属性:
属性 描述
avaiHeight 窗口可以使用的屏幕高度,单位像素
avaiWidth 窗口可以使用的屏幕宽度,单位像素
colorDepth 用户浏览器表示的颜色位数,通常为32位(每像素的位数)
pixelDepth 用户浏览器表示的颜色位数,通常为32位(每像素的位数)(IE不支持此属性)
height 屏幕的高度,单位像素
width 屏幕的宽度,单位像素
window.screen对包含有关用户屏幕的信息
1.screen.height返回屏幕分辨率的高
2.screen.width返回屏幕分辨率的宽
注意:
1.单位以像素计
2.window.screen对象在编写时可以不使用window这个前缀。我们来获取屏幕的高和宽,代码如下:
<script type="text/javascript">
 document.write("屏幕宽度:"+screen.width+"px<br />");
 document.write("屏幕高度:"+screen.height+"px<br />");
</script>
屏幕可用高和宽度:
1.screen.availWidth属性返回访问者屏幕的宽度,以像素计,减去界面特性,比如任务栏。
2.screen.availHeight属性返回访问者屏幕的高度,以像素计,减去界面特性,比如任务栏。
注意:
不同系统的任务栏默认高度不一样,及任务栏的位置可在屏幕上下左右任何位置,所以有可能可用宽度和高度不一样
我们来获取屏幕的可用高和宽度,代码如下:
<script type="text/javascript">
 document.write("可用宽度是:"+screen.availWidth);
 document.write("可用高度是:"+screen.availHeight);
</script>
注意:根据屏幕的不同显示值不同。
下面来认识DOM
文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法。DOM将HTML文档呈现为带有元素,属性和文本的树结构(节点树)。
先来看看西面代码:
<!DOCTYPE HTML>
<html>
<head>
<meta http-euqiv="Content-Type" content="text/html;charset=gb2312">
<title>DOM</title>
</head>
<body>
   <h2><a href="http://www.baidu.com">javascript DOM</a></h2>
   <p>对HTML元素进行操作,可添加,改变或移除CSS样式等</p>
   <ul>
       <li>JavaScipt</li>
       <li>DOM</li>
       <li>CSS</li>
   </ul>
</body>
</html>
将HTML代码分解为DOM节点层次如下:
html-----head和body
head---meta和title
body---h2和p和ul
h2--a
ul--li和li和li
HTML文档可以说由节点构成的集合,DOM节点有:
1.元素节点:上面的<html>、<body>、<p>等都是元素节点,即标签
2.文本节点:向用户展示的内容,如<li>...</li>种的JavaScript、DOM、CSS等文本
3.属性节点:元素属性,如<a>标签的链接属性href="http://www.baidu.com"、
节点属性:
方法 说明
nodeName 返回一个字符串,其内容是给定节点的名字
nodeType 返回一个整数,这个数值代表给定节点的类型
nodeValue 返回给定节点的当前值
便利节点树:
方法 说明
childNodes 返回一个数组,这个数组由给定元素节点的子节点构成
firstChild 返回第一个子节点
lastChild 返回最后一个子节点
parentNode 返回一个给定节点的父节点
nextSibling 返回给定节点的下一个子节点
previousSibling 返回给定节点的上一个子节点
以上面例子的ul为例,它的父级节点body,它的子节点3个li,它的兄弟节点h2、p
DOM操作:
方法 说明
createElement(element) 创建一个新的元素节点
createTextNode() 创建一个包含着给定文本的新文本节点
appendChild() 指定节点的最后一个子节点列表之后添加一个新的子节点
insertBefore()         将一个给定节点插入到一个给定元素节点的给定子节点前面
removeChild() 从一个给定元素中删除一个子节点
replaceChild() 把一个给定父元素里的一个子节点替换为另外一个节点
注意:前面两个是document方法
另外扯个没有用的,就是说啊。。过个两三天,我应该会结束进阶的内容。然后后面准备开始直播做一个博客。每天都会更新博客的进度和过程。包括调试等。反正之后摆在三叔的服务器上,啊哈哈哈哈哈

JavaScript进阶(八)

原文:http://www.cnblogs.com/zj520/p/6351679.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!