JavaScript之BOM和DOM编程——常用函数、属性、方法

13 篇文章 1 订阅
订阅专栏

BOM

BOM是一种浏览器对象模型,其中的一些对象操作都是居给浏览器的一些常组件和功能进行的。此处主要对BOM的4个对象及其他们的一些常用操作函数进行简单介绍:

  • window对象
  • location对象
  • screen对象
  • history对象

一、window对象常用函数

alert、confirm、prompt、setTimeout、setInterval、clearInterval函数介绍和用法如下:

(1)alert函数

定义:
  alert()函数用于进行window窗口的弹出,提示内容写在alert()函数括号内。

示例:

//使用弹出框警告可以有以下的两种表达方式
alert("弹出框");
window.alert("window的弹出框");

在这里插入图片描述

(2)confirm函数

定义:
  confirm函数存在返回值true和false,括号内输入提示信息,根据点击的操作来进行返回值,确认代表true,取消代表false。

示例:

var a = window.confirm("你确定要离开吗");
console.log(a);

在这里插入图片描述

(3)prompt函数

定义:
  prompt函数的第一个参数是输入框上的问题,第二参数是输入框中的默认值(可以不写第二个参数)

示例:

var name = window.prompt("你哈皮 请问鸟什么名字?", "可爱鬼dlj");
console.log(name);

在这里插入图片描述

(4)setTimeout函数

定义:
  setTimeout的函数第一个参数代表等待执行的函数,第二参数是等待的时间,该函数只执行一次,主要起的效果就是延迟执行。

示例:

window.setTimeout(      //即使此处的时间设置为0,它的执行顺序也是排在下面代码后的(因为只要调用了setTimeout函数就会延迟它的执行顺序)
	function () {
			console.log("aabb");
	}, 0
);
console.log("ccdd");
console.log("eeff");

在这里插入图片描述

(5)setInterval、clearInterval函数

定义:
  setInterval起到了周期性定时器的效果,是一个重复执行的函数,第一个参数是重复执行的循环体部分,第二个参数是执行任务的间隔时间。
  此外存在一个对应的定时器清除函数clearInterval,用于停止周期性定时器,因此在清除定时器的时候需要我们知道如何被清除的定时器名称。

示例:

var num = 0;      //一个计数器定义
	var timer_name = null;      //首先定义一个变量保存定时器名称
	timer_name = window.setInterval(
		function () {
			num++;
			if (num > 5) {
				clearInterval(timer_name);
				return;     //退出当前函数function,因此也不继续执行下面这一行代码,导致num为6的时候并未在控制台打印输出
			}
			console.log("num:" + num);
		}, 1000
	);

在这里插入图片描述
周期性输出1-5后,该定时器便被清除了,因此停止输出。

二、location对象常用属性

(1)location.host

可获取到当前的主机名称和端口号(倘若没有端口号将只显示主机名称)
在这里插入图片描述

(2)location.hostname

location.hostname获取当前主机的主机名

(3)location.href

获取当前地址的完整URL,我们可以利用该属性获取当前URL,也可以通过将该属性设置一个我们需要进行跳转的URL地址。例如:通过location.href=“新的URL地址”,则代码执行到此处的时候会进入新的地址。

(4)location.pathname

获取当前地址URL中的某个文件名或者目录

(5)location.port

只获取当前地址的端口号

(6)location.protocol

获取当前网络地址的协议,例如是http还是https协议或者其他类型的协议

控制台输出示例:
在这里插入图片描述

(7)location.search

这将返回URL地址中搜索的部分,即问号之后的内容。将URL中需要搜索的部分单独切出来,方便我们进行数据查找。

例如:
下面是一个完整的URL链接和被切分出来的搜索部分
https://so.csdn.net/so/search?q=web&t=&u=&urw=
在这里插入图片描述
拓展:
在获取到location.search部分的内容时,我们经常对其数据进行切分和封装保存,方便对数据进行后续的操作。
例如:
我们需要将下面的location.search字符串封装成数组格式:
在这里插入图片描述
在这里插入图片描述
代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>如何访问每个查询字参数</title>
</head>

<body>
    <form>
        <input type="text" name="user">
        <input type="password" name="pwd">
        <input type="submit">
    </form>


    <script type="text/javascript">
        console.log(location.search);
        function getQueryString() {
            //1.去掉location.search中的问号 获取后续的字符串
            var qs = location.search.length > 0 ? location.search.substring(1) : "";    //减去问号前需要判断字串长度是否为0
            //2.进行字符串切分  分别存入数组中
            var items = qs.length > 0 ? qs.split("&") : [];     //字串分割需要判空  []代表是置为空数组

            console.log("items:" + items);
            var key = null, value = null, args = {};
            var item = null;      //用于保存items中的元素
            for (var i = 0; i < items.length; i++) {    //遍历items数组 将每一项都按照key-value键值对的方式存入到对应数组中去
                item = items[i].split("=");
                // console.log("item:" + item);
                key = decodeURIComponent(item[0]);      //名字   使用decodeURIComponent函数能够兼容一些编码问题
                value = decodeURIComponent(item[1]);    //值
                if (key.length) { //key不能为空
                    args[key] = value;      //以键名为下标将值存入数组中去
                }
            }
            return args;
        }

        var args = getQueryString();
        console.log(args);
        console.log(args.user);
        console.log(args.pwd);
    </script>
</body>

</html>

结果显示
在这里插入图片描述

(8)location.reload()函数

可用于当前网页的刷新。使用方法:location.reload() ;

(9)location.replace()函数

用于URL地址的替换,相当于用一个新的网页地址替换了当前网页所在地址,并且不具备history的记忆。使用方法:location.replace(“新的URL”);

三、navigator对象

Navigator对象包含有关浏览器的信息,下面主要进行对如何判断浏览器中是否存在某个具体的插件plugin进行展示。

示例代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Navigator对象</title>
</head>

<body>
    <script>
        // Navigator 对象包含有关浏览器的信息。
        console.log(navigator.plugins);

        function hasPlugin(name) {
            name = name.toLowerCase();             //防止大小写出现不一致的情况 统一大写转成小写
            // console.log(name);
            for (var i = 0; i < navigator.plugins.length; i++) {
                if (navigator.plugins[i].name.toLowerCase().indexOf(name) > -1) {
                    // indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。   返回值大于-1代表name在其中出现过
                    return true;
                } else return false;
            }
        }

        var plugin_name = "Flash";
        window.alert(hasPlugin(plugin_name));           //窗口显示结果
        console.log(hasPlugin(plugin_name));

        plugin_name = "WebKit内建PDF";
        window.alert(hasPlugin(plugin_name));           //窗口显示结果
        console.log(hasPlugin(plugin_name));
    </script>

</body>

</html>

结果显示:
在这里插入图片描述
有结果可以判断,Flash插件并不存在当前浏览器中;而WebKit内建PDF是当前浏览器的插件。

四、history对象

(1)概述

window.history属性指向 History 对象,它表示当前窗口的浏览历史。History 对象保存了当前窗口访问过的所有页面网址。

(2)属性

History 对象主要有两个属性。
History.length:当前窗口访问过的网址数量(包括当前网页)
History.state:History 堆栈最上层的状态值

(3)方法

History.back():移动到上一个网址,等同于点击浏览器的后退键。对于第一个访问的网址,该方法无效果。

History.forward():移动到下一个网址,等同于点击浏览器的前进键。对于最后一个访问的网址,该方法无效果。

History.go():接受一个整数作为参数,以当前网址为基准,移动到参数指定的网址,比如go(1)相当于forward(),go(-1)相当于back()。如果参数超过实际存在的网址范围,该方法无效果;如果不指定参数,默认参数为0,相当于刷新当前页面。

history.back();
history.forward();
history.go(-2);
history.go(0)相当于刷新当前页面。

注意,移动到以前访问过的页面时,页面通常是从浏览器缓存之中加载,而不是重新要求服务器发送新属性

部分参考链接:
http://javascript.ruanyifeng.com/bom/history.html

DOM

DOM是一种文档对象模型(document object model)

一、节点的分类

文档就是一个一个的节点所组成的集合(节点树),在DOM中节点一般可以分为如下三类:

(1)元素节点(element node)

元素节点其实就是html中的常见标签元素,被看作为DOM中的一个节点,例如p标签、div标签、li标签等等,都是元素节点。元素节点的布局实际上决定了整个document的结构。

(2)文本节点(text node)

文本节点是DOM中用于呈现文本的部分,一般被包含在元素节点的开闭合标签内部。一个文档中没有文本节点代表没有实际内容。

(3)属性节点

一般是元素节点内部的属性,每一个 XML 属性算是一个属性节点。

(4)文档节点

整个文档是一个文档节点,是整个dom树的根节点;而文档节点(document)只有一个字节点为html节点。
在这里插入图片描述
实例说明:

<p class="temp">这是一个测试</p>

上述中p为元素节点,class为属性节点,“这是一个测试”是文本节点

二、获取元素节点的方式

(1)通过ID属性获取到元素节点

通过下面代码,对应的元素节点保存在变量eleNode中。

var eleNode = document.getElementById(元素节点的ID);
(2)通过class属性获取到元素节点

通过下面代码,所有class名称被查找的元素节点都保存在items中。

var items = document.getElementsByClassName(类名);
(3)通过标签名获取到元素节点

通过下面代码,对应的元素节点保存在变量olis中。但是olis是元素节点的一个集合,包括了所有为待查找的元素节点。即使集合中只有一个元素,olis的类型仍然不是元素节点,而是一个集合,取用其中的元素节点可以使用下标进行取用,例如olis[0]对应集合中的第一个对象,olis.length代表集合的长度即元素个数。

var olis = document.getElementsByTagName(标签名);

案例:

<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>web前端开发</title>
</head>

<body>
	<a href="http://www.w3c.org">w3c组织</a><br />
	<a href="http://www.w3school.com.cn">w3school学习网站</a><br />
	<a href="vs.html">前端与后端</a>
	<h1>WEB前端开发知识</h1>
	<h5>web front-end development</h5>
	<hr />
	<h2>基本概念</h2>
	<p title="article">Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Esse, enim, harum ipsum suscipit rem
		minima sint
		blanditiis id officia! Qui alias impedit consequuntur? Saepe soluta obcaecati, exercitationem, pariatur
		voluptatibus quae! Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nostrum vel odio beatae natus
		voluptates veniam ipsa qui officiis. Fugiat optio omnis voluptas non natus in cum unde aut, recusandae deleniti.
	</p>
	<h2>技术构成</h2>
	<p id="test">HTML</p>
	<p class="cc">CSS</p>
	<p class="cc">JS</p>
	<hr />
	<h6>copyright</h6>

	<script>
		var eleNode = document.getElementById("test");			//通过ID属性获取到元素节点
		console.log(eleNode);
		console.log(typeof (eleNode));			//打印出是object类型

		var olis = document.getElementsByTagName("a");
		console.log(olis);
		console.log(typeof (olis));

		var items = document.getElementsByClassName("cc");
		console.log(items);
		console.log(typeof (items));
	</script>
</body>

</html>

在这里插入图片描述
补充:
querySelector() 方法返回文档中匹配指定 CSS 选择器的一个元素。querySelector() 方法支持比较广泛,但是只能返回一个元素对象,支持ID选择器、class选择器,也能支持一些预定义标签和一些标签的属性;querySelectorAll()则会筛选出一个元素对象集合。这两种使用起来比较灵活方便

例子:

//获取文档中 id="demo" 的元素:
document.querySelector("#demo");

重点详细参考链接:
https://www.runoob.com/jsref/met-document-queryselector.html

三、getAttribute和setAttribute的用法

getAttribute函数用于获取节点对象的属性值,用法如下:

属性值=节点对象.getAttribute("属性名");

setAttribute函数用于设置节点对象的属性值,用法如下:

节点对象.setAttribute("属性名","属性值");

举例:

<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>web前端开发</title>
	<style>
		#box {
			color: red;
		}
	</style>
</head>

<body>
	<a href="http://www.w3c.org">w3c组织</a><br />
	<a href="http://www.w3school.com.cn">w3school学习网站</a><br />
	<a href="vs.html">前端与后端</a>
	<h1>WEB前端开发知识</h1>
	<h5>web front-end development</h5>
	<hr />
	<h2>基本概念</h2>
	<p title="article">Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Esse, enim, harum ipsum suscipit rem
		minima sint
		blanditiis id officia! Qui alias impedit consequuntur? Saepe soluta obcaecati, exercitationem, pariatur
		voluptatibus quae! Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nostrum vel odio beatae natus
		voluptates veniam ipsa qui officiis. Fugiat optio omnis voluptas non natus in cum unde aut, recusandae deleniti.
	</p>
	<h2>技术构成</h2>
	<p id="test">HTML</p>
	<p class="cc">CSS</p>
	<p class="cc">JS</p>
	<hr />
	<h6 title="版权声明">copyright</h6>


	<script>
		//在使用getAttribute函数之前  首先得需要一个确定的元素节点对象
		var item = document.getElementsByTagName("p")[0];		//代表取得是集合中的第一个元素
		//获取节点对象属性值前需要知道节点的参数名称
		var title = item.getAttribute("title");
		var classname = item.getAttribute("class");
		console.log(title);
		console.log(classname);		//如果未设置class名称  则会返回NULL

		//使用setAttribute函数进行属性设置
		item.setAttribute("id", "box");		//通过dom操作可以手动给标签元素加上id属性

	</script>
</body>

</html>

在这里插入图片描述

四、节点对象的3个属性

在文档对象模型 (DOM) 中,每个节点都是一个对象。DOM 节点有三个重要的属性 :

nodeName : 节点的名称
nodeValue :节点的值
nodeType :节点的类型

注意:此处的属性不是指属性节点,而是document中所有的节点都会存在相应的三个属性,属性节点也存在自己的三个属性(属性名、属性值、属性类型)

1.nodeName 属性: 节点的名称,是只读的。

元素节点的 nodeName 与标签名相同
属性节点的 nodeName 是属性的名称
文本节点的 nodeName 永远是 #text
文档节点的 nodeName 永远是 #document
注释节点的 nodeName 永远是 #comment

2.nodeValue 属性:节点的值

元素节点的 nodeValue 是 undefined 或 null
文本节点的 nodeValue 是文本自身
属性节点的 nodeValue 是属性的值

3.nodeType 属性: 节点的类型,是只读的。
以下常用的几种结点类型:

元素类型 节点类型
元素 			1
属性 			2
文本 			3
注释 			8
文档			    9

案例:

<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<title>dom对象</title>
</head>

<body>
	<div id="txt" title="文本">我是一个文本节点
		<!-- 这是个注释节点 -->
	</div>

	<script>
		//1.	元素节点的三种属性
		var oTxt = document.getElementById("txt");
		console.log(oTxt.nodeName + "|" + oTxt.nodeValue + "|" + oTxt.nodeType);

		//打印该元素节点的所有属性节点
		console.log(oTxt.attributes);

		//2.	属性节点的三种属性
		var txtClass = oTxt.attributes[1];
		console.log(txtClass.nodeName + "|" + txtClass.nodeValue + "|" + txtClass.nodeType);

		//打印该元素节点的所有子节点			上述div标签中的子节点有文本节点和注释节点、一个回车  但是不包括属性节点
		console.log(oTxt.childNodes);

		//3.	文本节点的三种属性
		var textnode = oTxt.childNodes[0];
		console.log(textnode.nodeName + "|" + textnode.nodeValue + "|" + textnode.nodeType);

		//4.	注释节点的三种属性
		var commentnode = oTxt.childNodes[1];
		console.log(commentnode.nodeName + "|" + commentnode.nodeValue + "|" + commentnode.nodeType);

		//5.	文档节点的三种属性
		console.log(document.nodeName);
		console.log(document.nodeValue);
		console.log(document.nodeType);
	</script>

</body>
</html>

在这里插入图片描述

五、处理元素子节点、兄弟节点中空格问题

(1)处理子节点中空格问题

在不同的浏览器中运行同样的网页存在一些兼容性问题。例如在Chrome、Safari浏览器上进行访问元素节点的子节点时,会存在空格或者回车的干扰,因此导致子节点中多处一些文本节点(“回车会被认为是文本节点#text”),下面将进行实现一个消除空格的封装函数。

<div id="txt" title="文本">我是一个文本节点
		<!-- 这是个注释节点 -->
</div>

<script>
var item = document.getElementById("txt");
console.log(item.childNodes);
</script>

可见下面的第三个节点为空。
在这里插入图片描述

封装函数实现例子:

<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<title>dom对象</title>

</head>

<body>
	<div id="txt" title="文本">
		<p>wadefgdascfsd</p>
		<p>阿萨德能看出发生的</p>
		稳定繁荣
	</div>
	<script>
		var item = document.getElementById("txt");
		console.log(item.childNodes);

		function get_childNodes(item) {		//利用元素节点为1的特性进行筛选
			var arr = [];
			var nodes = item.childNodes;
			for (var i = 0; i < nodes.length; i++) {
				if (nodes[i].nodeType == 1) {
					arr.push(nodes[i]);
				}
			}
			return arr;
		}
		var new_child = get_childNodes(item);
		console.log(new_child);
	</script>

</body>

</html>

在这里插入图片描述
结果中排除了空格或者回车键带来的影响,但是上面的封装函数也就只是提取类型为元素节点的子节点(nodeType类型为1)

(2)处理兄弟节点中空格问题
<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<title>dom对象</title>

</head>

<body>
	<div id="txt" title="文本">
		<p>wadefgdascfsd</p>
		<p>阿萨德能看出发生的</p>
		稳定繁荣
	</div>
	<div>我是一个兄弟节点</div>
	<script>
		var item = document.getElementById("txt");

		function get_nextSlibing(item) {
			var nextNode = item.nextSibling;
			while (nextNode != null && nextNode.nodeType != 1) {			//倘若不是下一个兄弟节点不是元素节点  则一直找下去
				nextNode = nextNode.nextSibling;
			}
			return nextNode;
		}
		var next = get_nextSlibing(item);
		console.log(next);
	</script>

</body>
</html>

在这里插入图片描述

六、元素节点的增删改查

通过dom动态对节点进行操作:

1.创建节点:createElement()

2.插入节点:appendChild()
		  insertBefore(新元素,原节点)

3.删除节点:removeChild(元素)

4.替换节点relpaceChild(新元素,原节点)

5.创建文本节点createTextNode()

6.元素对象属性:firstChild 第一个子节点
			 lastChild	最后一个子节点
			 childNodes	子节点集合
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .lovely {
            color: red;
            font-size: 15px;
            font-weight: bold;
        }
    </style>
</head>

<body>
    <div id="box">
        <p id="act">
            超级喜欢落日飞车和sweet jhon
        </p>
    </div>

    <script>
        var item = document.getElementById("box");        //获取dom对象- ID名称为box的div区域
        var new_p = document.createElement("p");      //新建立一个p标签(元素节点)
        var newNode1 = document.createElement("h2");
        var newNode2 = document.createElement("a");


        newNode1.innerHTML = '我是一个前插节点,插入在new_p之前';
        newNode2.setAttribute("href", "http://www.baidu.com");
        newNode2.innerHTML = "点击此处进行百度";          //注意  此处的a标签设置完href属性之后 一定需要进行文本的设置  否则在浏览器上无法显示
        new_p.setAttribute("class", "lovely");           //给新节点设置类名  从而与对应样式链接在一起

        //给新的p标签设置文本:     
        //方法一    加上文本类型的子节点
        var textNode = document.createTextNode("我是一个新的p标签");
        new_p.appendChild(textNode);
        //方法二    使用innerHtml直接内嵌   innerHtml内嵌文本的时候单双引号都支持  但是内嵌html代码时只能使用单引号
        //innerHtml能够内嵌html代码和文本  innerText只能内嵌文本
        // new_p.innerHTML = "我是一个新的p标签2";
        // new_p.innerHTML = '<a href="www.baidu.com">百度一下</a>';           //为什么内嵌不了了
        // new_p.innerText = '<a href="www.baidu.com">百度一下</a>';


        item.appendChild(new_p);                //插入新节点new_p到div中
        item.insertBefore(newNode1, new_p);       //插入在new_p节点前
        console.log(item);

        //进行子节点的删除
        // item.removeChild(new_p);

        //进行下属子节点的替换
        // item.replaceChild(newNode2, newNode1);

        //使用完成进行节点对象的释放
        new_p = null;
        newNode = null;
    </script>

</body>

</html>

在这里插入图片描述

七、元素节点的CSS样式添加方法

通过dom操作,我们可以给已经存在的元素节点添加上CSS样式,如下存在两种方式:
(1)首先在style中设置好CSS样式,只通过dom操作将元素节点的类名设置为样式名称即可让元素节点渲染上对应的样式。
(2)全部通过dom进行操作,在获取到元素节点对象后,对对象中的style中的属性依次进行设置,达到渲染效果。

示例:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>dom渲染CSS的方式</title>
    <style>
        .fun {
            width: 250px;
            height: 250px;
            color: white;
            line-height: 250px;
            font-size: 15px;
            background-color: blue;
            text-align: center;
        }
    </style>
</head>

<body>
    <div id="box">通过dom进行CSS样式渲染</div>

    <script>
        var item = document.getElementById("box");        //获取对象
        console.log(item.style);

        //1.通过对元素节点设置类名,将CSS样式挂上       (批量操作 方便一次添加)
        item.setAttribute("class", "fun");

        //2. 通过对对象的style中属性进行逐个复制修改
        // item.style.width = "250px";
        // item.style.height = "250px";
        // item.style.color = "white";
        // item.style.lineHeight = "250px";
        // item.style.fontSize = "15px";
        // item.style.backgroundColor = "blue";
        // item.style.textAlign = "center";
    </script>
</body>

</html>

在这里插入图片描述

八、鼠标操作相关事件

在这里插入图片描述

BOM编程DOM编程
qq_36598571的博客
02-26 461
BOM编程DOM编程 1.BOM编程 BOM(browser object model)主要分为六大类,window(窗口)、history(浏览历史)、screen(分辨率)、location(地址栏)、document(页面可见部分)、navigator(封装浏览器内容信息)。 (1) close() &lt;script&gt; ...
BOMDOM编程
weixin_42194337的博客
08-31 279
BOMDOM编程 BOMDOM模型 BOM模型 浏览器对象模型(Browser Object Model) 用于描述浏览器对象与对象之间层次关系的模型 [外链图片转存失败(img-1roCt2kg-1567214882250)(H:_Typora_doc\image\BOM结构图.png)] window对象,最高层,通过属性方法实现对浏览器窗口的操作 document对象,BOM的...
JS函数BOMDOM操作
04-30 119
写在前面: 之前在学习js的时候,这一块感觉掌握的很不好,而这一块在js是比较重要的,所以借此系统的将这一部分进行整理,以备不时之需 。 一、函数 1.js函数的声明与调用 1).声明: function 函数名(参数一,参数二){ //函数体代码 return 返回值 } 2).调用 ①直接调用:函数名(参数一,参数二); ②通...
bom_dom
树上的小桥 的专栏
03-27 565
1.     BOM编程 1.1. BOM编程基础     全称 Browser Object Model,浏览器对象模型。     JavaScript是由浏览器内置的javascript脚本解释器程序来执行javascript脚本语言的。     为了便于对浏览器的操作,javascript封装了对浏览器的各个对象使得开发者可以方便的操作浏览器。 1.2. BOM对象: 1.3.
JavascriptBOMDOM讲解
最新发布
02-09
JavaScript是Web开发不可或缺的一部分,主要由三个组成部分构成:ECMAScript、DOM(文档对象模型)和BOM(浏览器对象模型)。这三个部分协同工作,使开发者能够创建动态、交互式的网页。 1. ECMAScript: ...
javascript bom是什么及bomdom的区别
11-22
BOM,`window`对象扮演着全局作用域的角色,几乎所有的JavaScript变量和函数都存在于`window`对象的上下文。因此,可以直接调用`window`对象的属性方法,而无需明确地指定`window`。例如,`document.write(...
实现JavaScript的组成----BOMDOM详解
10-22
标题所涉及的知识点是JavaScript的组成...上述内容涵盖了BOMDOMJavaScript的角色和应用,进一步的学习需要对每个对象、属性方法有更深入的理解,同时结合实际项目进行实践,以便更好地掌握JavaScript编程技能。
Javascript操作BOMDOM
12-30
JavaScript的世界里,BOM(浏览器对象模型)和DOM(文档对象模型)是两个至关重要的概念,它们允许开发者与用户的浏览器进行深入交互。 **BOM(浏览器对象模型)**: BOM是浏览器提供的一系列接口,它允许...
JavaScript源代码】JavaScriptBOMDOM详解.docx
12-29
JavaScriptBOM(Browser Object Model,浏览器对象模型)和DOM(Document Object Model,文档对象模型)是两个核心概念,它们都是JavaScript与网页交互的关键部分。 **BOM(浏览器对象模型)** 1. **Window...
BOM函数
01-21 1280
15 .函数CS_WHERE_USED_MAT(逆查BOM)    说明﹕取的物料的上层物料                 CALL FUNCTION 'CS_WHERE_USED_MAT'                EXPORTING                datub                      = sy-datum                datuv
4、BOM编程 DOM编程(1)
guanhang89的专栏
04-25 5457
BOM全称 Browser Object Model,浏览器对象模型。 JavaScript是由浏览器内置的javascript脚本解释器程序来执行javascript脚本语言的。 为了便于对浏览器的操作,javascript封装了对浏览器的各个对象使得开发者可以方便的操作浏览器。所有浏览器都支持 window 对象。它表示浏览器窗口。 所有 JavaScript 全局对象、函数以及变量均自
JS 对象与函数 学习二
jomes_wang的博客
12-17 124
每天都要学习哈!!!! 一:函数1.1 Function() 构造器正如您在之前的例子看到的,JavaScript 函数是通过 function 关键词定义的。 函数也可以通过名为 Function() 的内建 JavaScript 函数构造器来定义。 大多数情况下,您可以避免在 JavaScript 使用 new 关键词。 1.2 函数提升在本教程稍早前,您已经学到了“提升”(ho...
javascript 学习 —— BOMDOM编程学习
HUIxinbumie的博客
02-20 321
这是我的第一个博客,用来记录自己的学习历程。之前的学习会在项目下写备注,再次翻看也有些不方便。从今天开始就用博客记录吧。 一、BOM ( browser object model ) 与DOM 1.在学习DOM之前总听到BOM这个概念,什么是BOM呢?BOM全称 Browser Object Model,浏览器对象模型。 JavaScript是由浏览器内置的j...
BOMDOM编程
Zhao_XP的博客
07-15 338
BOM(browser object model):浏览器对象模型浏览器:windows对象Window 对象方法:alert(); 显示带有一段信息和一个确认按钮的警告框confirm(); 显示带有一段信息以及确认取消按钮的对话框prompt(); 显示可提示用户输入的对话框colse(); 关闭所有窗口moveby(); 相对于窗口的当前坐标移动到指定像素moveto(); 相对...
进阶学习之JavaScriptBOM编程DOM编程
_Gerald的博客
08-09 597
一、BOM(Browser Object MOdel):浏览器对象模型 1、浏览器对象模型:把浏览器 的各个部分都是用了一个对象进行描述,如果我们要 操作浏览器的一些属性,我就可以通过浏览器对象模型的对象进行操作。 window 代表了一个新开的窗口 location 代表了地址栏对象。 screen 代表了整个屏幕的对象 window对象常用方法: open() 打开一个新...
七、Bom编程Dom编程
weixin_45602227的博客
05-18 205
一、BOM编程 javascript分为三部分: 1.ECMAScript(基本语法) 2.BOM(Browser Object Model) 浏览器对象模型: 浏览器对象模型就是把浏览器的各个部分都用了一个对象进行描述, 如果我们要操作浏览的一些属性,我们就可以通过浏览器对象模型 的对象进行操作。 3.DOM
JavaScript交互增强与DOM编程精华
本文将对JavaScript的基础知识、函数与Window对象、BOM编程以及DOM高级编程进行总结。 一、JavaScript基本语法 JavaScript由三个主要部分构成:ECMAScript(语言标准)、DOM(文档对象模型)和BOM(浏览器对象模型...
写文章

热门文章

  • MacOS下使用如何开启并使用MySQL 21435
  • C/C++ 读取EXCEL数据、字符串 19882
  • dataFrame将某列数据转换为float类型 11125
  • 卷积神经网络的卷积核大小、个数,卷积层数如何确定呢? 9418
  • ModuleNotFoundError: No module named ‘numpy.random.bit_generator‘解决方案 8445

分类专栏

  • 环境配置与安装 12篇
  • python 4篇
  • 算法练习 4篇
  • SQL 2篇
  • pytorch 1篇
  • 计算机网络 1篇
  • tensorflow 3篇
  • 前端知识 13篇
  • 编程 11篇
  • 其他 1篇
  • 笔记 2篇
  • 图像处理 3篇
  • 汇编 2篇
  • 贪心算法 1篇

最新评论

  • tensorflow如何查看模型训练时间

    干票大️: 为什么我用这段程序之后,每个epoch的输出没有变化啊

  • 《Single Image Haze Removal Using Dark Channel Prior》去雾代码实现分析

    qq_38728674: 您好,请问minfilt2这个位置报错,怎么解决?

  • 《Single Image Haze Removal Using Dark Channel Prior》去雾代码实现分析

    qq_45794966: 想问一下同学找到了么?可以分享一下么

  • C/C++ 读取EXCEL数据、字符串

    STEphenomenon: 为啥读出乱码啊

  • VS code的C++/C环境如何配置

    狗都不学c语言: c语言怎么配置呢?

最新文章

  • 【brew安装wget失败或者太慢】
  • dubbo-admin构建时卡住不动
  • HTTP Status 500 - java.lang.NullPointerException错误
2023年2篇
2022年25篇
2021年21篇
2020年14篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家安徽卡通玻璃钢雕塑定制南平玻璃钢雕塑厂玻璃钢雕塑成本一平方多少钱山东开业商场美陈生产厂家云南佛像玻璃钢雕塑销售厂家个性化玻璃钢雕塑方法玻璃钢雕塑厂有哪些平台北京景艺玻璃钢雕塑西安制作玻璃钢雕塑厂家赣州佛像玻璃钢雕塑定做价格四川动物玻璃钢雕塑哪家便宜端州玻璃钢造型雕塑批发武乡玻璃钢花盆花器淮南佛像玻璃钢雕塑玻璃钢雕塑的设计贵不贵山西大型玻璃钢雕塑设计官渡区玻璃钢雕塑设计公司白银玻璃钢卡通雕塑多少钱常州玻璃钢花盆制作南瓜玻璃钢雕塑摆件昌吉气球商场美陈装饰动物玻璃钢雕塑哪家便宜贺州玻璃钢花盆辽宁玻璃钢红军雕塑仿铜玻璃钢雕塑视频河北省玻璃钢雕塑厂家青岛常用玻璃钢花盆玻璃钢雕塑教程视频全新玻璃钢雕塑厂家高品质的选择濮阳玻璃钢圆门头雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化