js面向对象的学习笔记九(BOM 与 DOM 经常使用的属性分析)
一 BOM物 window 的 相关属性
1. 用户配置的机器配置对象 navigator
navigator.userAgent //该属性能够查看用户机器浏览器的配置
"Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.3 (KHTML, like Gecko) Version/8.0 Mobile/12A4345d Safari/600.1.4"
2. 用户uri訪问地址 location
主 机:host: "www.baidu.com"
主机名称:hostname: "www.baidu.com"
完整uri :href: "http://www.baidu.com/s?wd=%E5%A6%82%E4%B"
域 名:origin: "http://www.baidu.com"
路 径:pathname: "/s"
端 口 号:port: ""
协议类型:protocol: "http:"
又一次加载:reload: function 无參数 直接调用
又一次加载:replace: function 有參数 调用后 不会在history中生成
GET 參数:search: "?wd=aaa&lang=zh_cn&name=lizsi"
//获取用户url 上的參数
//直接使用 getParam('name')
function getParam(param){
var getarr = (window.location.search.substring(1)).split('&');
var getparam = {};
for(var j in getarr){
var temp = getarr[j].split('=');
temp[0] = temp[0].replace(' ','');//去掉变量名中的空格
getparam[temp[0]] = temp[1];
}
return getparam[param];
} //对于pathinfo模式的获取 直接使用getpathinfo(1); 从1開始
function getpathinfo(index){
var getarr = (window.location.pathname.substring(1)).split('/');
return getarr[parseInt(index)-1];
}
3. 历史訪问记录 history
仅仅同意訪问本域名下的历史记录
后退 一 页:back: function 无參数 直接调用
前进 一 页:forward: function 无參数 直接调用
返回指定页:go: function -1 后退一页 0 刷新当前页 1 前进一页 2 前进俩页
pushState: function () 參数
replaceState: function () 參数
//详情查看 http://www.zhangxinxu.com/study/201306/ajax-page-html5-history-api.html? area=pudong //点击过的 增加历史记录
var query = this.href.split("? ")[1];
history.pushState({ title: title }, title, location.href.split("?")[0] + "?" + query);
var title = $(this).text().replace(/\d+$/, "");
document.title = title; //监听 相关事件
window.addEventListener("popstate", function() {
history.replaceState(null, document.title, location.href.split("?")[0]);
});
4. 屏幕对象 screen
屏幕可见高度: availHeight: 667
屏幕可见宽度: availWidth: 375
屏幕分辨率: colorDepth: 24
屏幕高度: height: 667
屏幕宽度: width: 375
availLeft: 0
availTop: 0
二 DOM 对象 document
1. 缓存 cookie
//直接使用 cookieParam('name')
function cookieParam(param){
var getarr = document.cookie.split(';');
var getparam = {};
for(var j in getarr){
var temp = getarr[j].split('=');
temp[0] = temp[0].replace(' ','');//去掉变量名中的空格
getparam[temp[0]] = temp[1];
}
return getparam[param];
}
版权声明:本文博主原创文章,博客,未经同意不得转载。
js面向对象的学习笔记九(BOM 与 DOM 经常使用的属性分析)的更多相关文章
- 前端学习笔记之BOM和DOM
前言 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我们需要继续学习BOM和DO ...
- 前端学习:JS面向对象知识学习(图解)
前端学习:JS面向对象知识学习(图解) 前端学习:JS(面向对象)代码笔记 JS面向对象图解知识全览 创建类和对象 方式1:使用Object()函数 方式2:使用自变量 方式3:使用工厂函数 创建多个 ...
- 【09-23】js原型继承学习笔记
js原型继承学习笔记 function funcA(){ this.a="prototype a"; } var b=new funcA(); b.a="object a ...
- Underscore.js 源码学习笔记(下)
上接 Underscore.js 源码学习笔记(上) === 756 行开始 函数部分. var executeBound = function(sourceFunc, boundFunc, cont ...
- Underscore.js 源码学习笔记(上)
版本 Underscore.js 1.9.1 一共 1693 行.注释我就删了,太长了… 整体是一个 (function() {...}()); 这样的东西,我们应该知道这是一个 IIFE(立即执行 ...
- 多线程学习笔记九之ThreadLocal
目录 多线程学习笔记九之ThreadLocal 简介 类结构 源码分析 ThreadLocalMap set(T value) get() remove() 为什么ThreadLocalMap的键是W ...
- MDX导航结构层次:《Microsoft SQL Server 2008 MDX Step by Step》学习笔记九
<Microsoft SQL Server 2008 MDX Step by Step>学习笔记九:导航结构层次 SQL Server 2008中SQL应用系列及BI笔记系列--目录索 ...
- python3.4学习笔记(九) Python GUI桌面应用开发工具选择
python3.4学习笔记(九) Python GUI桌面应用开发工具选择 Python GUI开发工具选择 - WEB开发者http://www.admin10000.com/document/96 ...
- Go语言学习笔记九: 指针
Go语言学习笔记九: 指针 指针的概念是当时学C语言时了解的.Go语言的指针感觉与C语言的没啥不同. 指针定义与使用 指针变量是保存内存地址的变量.其他变量保存的是数值,而指针变量保存的是内存地址.这 ...
随机推荐
- swift排序算法和数据结构
var arrayNumber: [Int] = [2, 4, 6, 7, 3, 8, 1] //冒泡排序 func maopao(var array: [Int]) -> [Int] { fo ...
- newinstance()和new有什么区别?(转)
在初始化一个类,生成一个实例的时候:newInstance() 和 new 有什么区别? 用newInstance与用new是区别的,区别在于创建对象的方式不一样,前者是使用类加载机制,那么为什么会有 ...
- CAS Spring Security 3 整合配置(转)
一般来说, Web 应用的安全性包括用户认证( Authentication )和用户授权( Authorization )两个部分.用户认证指的是验证某个用户是否为系统中的合法主体,也就是说用户能否 ...
- Android学习路径(两)项目文件本身使用场景和文件演示
ios讨论群1群:135718460 1.src文件:java源码存放文件夹 2.gen 文件:自己主动生成全部由android开发工具自己主动生成的文件,文件夹中最重要的就是R.java文件,这个 ...
- Android UI - 实现广告Banner旋转木马效果
Android UI - 实现广告Banner旋转木马效果 前言 本篇博客要分享的一个效果是实现广告Banner轮播效果,这个效果也比較常见,一些视频类应用就常常有,就拿360影视大全来举例吧: 用红 ...
- paip.jdk1.4 1.5(5.0) 1.6(6.0) 7.0 8.0特点比较与不同
paip.jdk1.4 1.5(5.0) 1.6(6.0) 7.0 8.0特点比较与不同 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地 ...
- object-c计划tips-添加到类对象属性
这个问题从网络包的内容,由于保密问题,我刚才所描述我的业余的想法. 基本的想法: 网络请求,我们应该能够使用基类BaseNetWork, 然后由派生类继承BaseNetWork,并实现一些特殊的方法. ...
- 仿微沟道效应,主要actionbar有些知识
仿微沟道效应,主要actionbar有些知识 1.新actionBar的menu <menu xmlns:android="http://schemas.android.com/apk ...
- ubuntu 下舒畅的使用libreoffice
step 1 英语渣的同学.或者对功能栏的一大堆略显专业的单词不敢下手的同学 你须要一个中文汉化包 不用去官网找了,源里就有 sudo apt-get install libreoffice-l10n ...
- 一个非常有用的函数——COALESCE
原文:一个非常有用的函数--COALESCE 很多人知道ISNULL函数,但是很少人知道Coalesce函数,人们会无意中使用到Coalesce函数,并且发现它比ISNULL更加强大,其实到目前为止, ...