开发工具与关键技术:Adobe Dreamweaver JavaScript
作者:执~漠
撰写时间:2020年4月21日
- 概念:
我们使用的是面向对象编程,所以JavaScript中所以的事物都是对象。 - JavaScript对象
对象的相关值是属性。
访问对象的语法是:objectName.proertyName - 创建JavaScript对象
通过JavaScript能够定义并创建只属于自己的对象
创建新对象有两种不同的方法:
(1) 定义并创建对象实例(实例化对象,用new来实例化,并且可以添加你需要的属性)
列如1:a=new Object();
a.name=”xiaoHo”;
a.age=20;
a. school=”北京大学”;
列如2:a={name:”xiaoHo”,age:20,school:” 北京大学”};
(2) 使用函数来定义对象,然后创建新的对象实例(创建一个新的方法)
例如:function a(strName,strAge,strSchool)
{
This.name= strName;
This.age= strAge;
This.school= strSchool;
}
- JavaScript浏览器对象模型BOM
概念:浏览器对象模型(宿主对象),它提供许多对象用于访问浏览器的功能,这些功能与任何网页内容无关。它将浏览器中各个部分转换成了一个一个的对象,可以通过修改这些对象的属性,和调用它们的方法,从而控制浏览器的各种行为。
- window对象
代表整个浏览器窗口,同时window也是页面的全局对象(全局对象) - Navigator对象代表
代表的是当前浏览器窗口的信息,通过该对象可以来识别不同的浏览器
一般我们只会使用userAgent来判断浏览器的信息,userAgent是一个字符串,这个字符串中包含有用来描述浏览器信息的内容,不同的浏览器会有不通过的userAgen
例如:console.log(navigator.appName);
谷歌输出的是Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36
火狐输出的是Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0
var ua = window.navigator.userAgent;
if(/firefox/i.test(ua)){
alert("这是火狐浏览器");
}else if(/Chrome/i.test(ua)){
alert("这是谷歌浏览器");
}
这个方法只能判断谷歌和火狐不能判断ie浏览器,如果要判断ie浏览器用ActiveXObject
这个方法谷歌和火狐返回值是undefined,ie浏览器返回的是function ActiveXObject() { [native code]}所以可以利用这个来判断是否是ie浏览器。
var ua = window.navigator.userAgent;
if(/firefox/i.test(ua)){
alert("这是火狐浏览器");
}else if(/Chrome/i.test(ua)){
alert("这是谷歌浏览器");
}else if("ActiveXObject" in window){
alert("ie浏览器");
}
- History 对象
History对象可以用来操作浏览器向前后或向后翻页
length 返回浏览器历史列表中的 URL 数量。
例如:console.log(history.length);
back()加载history列表的前一个url。与go(-1)效果一样
forward()加载history列表中的下一个url。与go(1)效果一样。,
go() 加载 history 列表中的某个具体页面。
4) Location对象
Location对象中封装了浏览器的地址栏的信息
hash 设置或返回从井号 (#) 开始的 URL(锚)。
host 设置或返回主机名和当前 URL 的端口号。
hostname 设置或返回当前 URL 的主机名。
href 设置或返回完整的 URL。
pathname 设置或返回当前 URL 的路径部分。
port 设置或返回当前 URL 的端口号。
protocol 设置或返回当前 URL 的协议。
search 设置或返回从问号 (?) 开始的 URL(查询部分)。