BCSP-玄子前端开发之JavaScript+jQuery入门CH03_BOM操作

news/2024/4/19 8:06:49/文章来源:https://blog.csdn.net/qq_62283694/article/details/130261260

BCSP-玄子前端开发之JavaScript+jQuery入门CH03_BOM操作

4.3 BOM模型

BOM:浏览器对象模型(Browser Object Model)

BOM提供了独立于内容的、可与浏览器窗口进行互动的对象结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c8FF4eyz-1681958812865)(./assets/image-20230420102821573.png)]

BOM可实现功能

  • 弹出新的浏览器窗口
  • 移动、关闭浏览器窗口以及调整窗口的大小
  • 页面的前进、后退

4.3.1 Window 对象的常用属性

表示浏览器中打开的窗口

属性名称说明
history有关客户访问过的URL的信息
location有关当前 URL 的信息
screen只读属性,包含客户端显示屏幕的信息
window.属性名= "属性值"; 
window.location="https://www.xuanzishare.com";
// 跳转网站
screen.width
// 返回浏览器屏幕的宽度,单位为像素

4.3.2 Window 对象的常用方法

方法名称说明
prompt( )显示可提示用户输入的对话框
alert( )显示带有一个提示信息和一个确定按钮的警示框
confirm( )显示一个带有提示信息、确定和取消按钮的对话框
close( )关闭浏览器窗口
open( )打开一个新的浏览器窗口,加载给定 URL 所指定的文档
setTimeout( )在指定的毫秒数后调用函数或计算表达式
setInterval( )按照指定的周期(以毫秒计)来调用函数或表达式
clearTimeout( )用于停止执行setTimeout( )方法的函数代码
clearInterval( )用于停止 setInterval( ) 方法执行的函数代码

4.3.3 open() 和 close() 方法

window.open( "弹窗内容的url", "窗口名称", "窗口特征", true|false );
window.close();

4.3.4 窗口特征

属性名称说明
height、width窗口文档显示区的高度、宽度,以像素计
left、top窗口的x坐标、y坐标,以像素计
toolbar=yes | no | 1 | 0是否显示浏览器的工具栏,黙认是yes
scrollbars=yes | no | 1 | 0是否显示滚动条,黙认是yes
location=yes | no | 1 | 0是否显示地址地段,黙认是yes
status=yes | no | 1 | 0是否添加状态栏,黙认是yes
menubar=yes | no | 1 | 0是否显示菜单栏,黙认是yes
resizable=yes | no | 1 | 0窗口是否可调节尺寸,黙认是yes
titlebar=yes | no | 1 | 0是否显示标题栏,黙认是yes
fullscreen=yes | no | 1 | 0是否使用全屏模式显示浏览器,黙认是no。处于全屏模式的窗口必须同时处于剧院模式

4.3.5 History 对象

保存用户上网的历史记录,可通过 window.history 属性访问

类别名称说 明
属性length返回历史记录列表中的网址数
方法back()加载 History 对象列表中的前一个URL
forward()加载 History 对象列表中的下一个URL
go()加载 History 对象列表中的某个具体URL
history.back() = history.go(-1)
// 等价于浏览器中的“后退”
history.forward()  = history.go(1) 
// 等价于浏览器中的“前进”

go() 方法的参数还可以是要访问的URL或URL的子串

4.3.6 Location 对象

包含有关当前URL的信息,可通过window.location属性访问

常用属性

名称说明
host设置或返回主机名和当前URL的端口号
hostname设置或返回当前URL的主机名
href设置或返回完整的URL

常用方法

名称说明
reload()重新加载当前文档
replace()用新的文档替换当前文档

4.3.7 Document 对象

Document对象代表整个HTML文档

名称说明
getElementById()返回对拥有指定id的第一个对象的引用
getElementsByName()返回带有指定名称的对象的集合
getElementsByTagName()返回带有指定标签名的对象的集合
write()向文档写文本、HTML表达式或JavaScript代码

4.3.8 实际应用

  • 动态改变层、标签中的内容
document.getElementById("phone").innerHTML="1+8 Pro Max";
  • 访问相同name的元素
var aInput=document.getElementsByName("size");
var sStr="";
for(var i=0; i<aInput.length; i++){sStr+=aInput[i].value+"&nbsp;&nbsp;";
}
document.getElementById("replace").innerHTML=sStr;
  • 访问相同标签的元素
var aInput=document.getElementsByTagName("input");
var sStr="";
for(var i=0; i<aInput.length; i++){sStr+=aInput[i].value+"&nbsp;&nbsp;";
}
document.getElementById("replace").innerHTML=sStr;

4.4 定时函数

  • 超时调用:setTimeout()
window.setTimeout("调用的函数", 等待的毫秒数);
var  myTime=setTimeout("disptime()", 1000);
// 1秒(1000毫秒)后执行disptime()函数一次
  • 间歇调用:setInterval()
window.setInterval("调用的函数", 间隔的毫秒数);
var  myTime=setInterval("disptime()", 1000);
// 每隔1秒(1000毫秒)执行一次disptime()函数

4.4.1 清除函数

  • clearTimeout()
clearTimeout(setTimeOut()返回的ID)
var  myTime=setTimeout("disptime()", 1000);
clearTimeout(myTime);
  • clearInterval()
clearInterval(setInterval()返回的ID)
var  myTime=setInterval("disptime()", 1000);
clearInterval(myTime);

如果要多次调用,使用setInterval()或者让被调函数自身再次调用setTimeout()

4.5 JavaScript 内置对象

  • Array:用于在单独的变量名中存储一系列的值
  • String:用于支持对字符串的处理
  • Math:用于执行常用的数学任务,包含若干个数字常量和函数
  • Date:用于操作日期和时间

4.5.1 Array 对象

  • 创建数组
new Array();
new Array(size);
new Array(element0, element1,, elementN);
  • 为数组元素赋值
var fruit = new Array("apple", "orange", " peach", "banana");
var fruit = ["apple","orange","peach","banana"];
  • 访问数组
数组名[下标]
var fruit = new Array(4);
fruit [0] = "apple";
fruit [1] = "orange";
fruit [2] = "peach";
fruit [3] = "banana";
类别名称描述
属性length设置或返回数组中元素的数目
方法join()把数组的所有元素放入一个字符串,通过逗号或指定的分隔符进行分隔
sort()对数组排序
push()向数组末尾添加一个或更多元素,并返回新的长度
forEach()遍历数组,forEach()方法不会直接修改原始数组,但是回调函数可能会修改
  • forEach()方法
array.forEach(callback[, thisArg]);
  • callback参数:为数组中的每个元素执行的函数
  • thisArg参数:可选,callback函数中的this可以引用的对象
callback(currentValue[, index[, array]])
  • currentValue:数组中正在处理的当前元素
  • index:可选,数组中正在处理的当前元素的索引
  • array:可选,forEach()方法正在操作的数组

4.5.2 Date对象

用于处理日期和时间,使用自UTC(Coordinated Universal Time,国际协调时间)1970年1月1日0时开始经过的毫秒数来保存日期

new Date();
new Date(dateString);
var today=new Date(); 
// 返回当前日期和时间
var sdate=new Date("July 15,2020,10:07:42");
// 返回指定日期和时间
方法说明
getDate()返回 Date 对象的一个月中的每一天,其值介于1~31之间
getDay()返回 Date 对象的星期中的每一天,其值介于0~6之间
getHours()返回 Date 对象的小时数,其值介于0~23之间
getMinutes()返回 Date 对象的分钟数,其值介于0~59之间
getSeconds()返回 Date 对象的秒数,其值介于0~59之间
getMonth()返回 Date 对象的月份,其值介于0~11之间
getFullYear()返回 Date 对象的年份,其值为4位数
getTime()返回自某一时刻(1970年1月1日)以来的毫秒数

4.5.3 Math对象

提供与数学相关的功能

方法说明示例
ceil()对参数进行上舍入Math.ceil(25.5);返回26Math.ceil(-25.5);返回-25
floor()对参数进行下舍入Math.floor(25.5);返回25Math.floor(-25.5);返回-26
round()把参数四舍五入为最接近的数Math.round(25.5);返回26Math.round(-25.5);返回-26
random()返回0~1之间的随机数Math.random();例如:0.6273608814137365

实现返回一个1~100(含1和100)之间的整数

Math.floor(Math.random()*100+1);

BCSP-玄子前端开发之JavaScript+jQuery入门CH03_BOM操作

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_102225.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】(7)复合查询

文章目录 单表查询回顾与练习多表查询自连接多行子查询&#xff08;单列&#xff09;in 运算符all 关键字any 关键字 多列子查询from 子句中的子查询合并查询 单表查询回顾与练习 注&#xff1a;下面的依旧基于 scott 数据库 MariaDB [scott]> select * from emp; -------…

ASEMI代理ADG736BRMZ-REEL7原装ADI车规级ADG736BRMZ-REEL7

编辑&#xff1a;ll ASEMI代理ADG736BRMZ-REEL7原装ADI车规级ADG736BRMZ-REEL7 型号&#xff1a;ADG736BRMZ-REEL7 品牌&#xff1a;ADI /亚德诺 封装&#xff1a;MSOP-10 批号&#xff1a;2023 安装类型&#xff1a;表面贴装型 引脚数量&#xff1a;10 类型&#xff1…

Mybatis框架超详解及运用总结

Mybatis 一、什么是Mybatils&#xff1f;二、第一个Mybatils程序2.1、创建springboot工程2.2、准备数据2.3、配置MyBatis2.4、编写SQL语句2.5、单元测试 三、JDBC四、数据库连接池五、lombok六、Mybatis基础操作6.1、删除6.2、新增6.2.1、主键返回 6.3、修改6.4、查询6.4.1、数…

推式配货(Push)、拉式配货(Pull)和配送需求计划(DRP)的区别

随着电子商务的迅猛发展&#xff0c;物流配送服务已然成为企业竞争最为核心的环节&#xff0c;一个全面、完善的物流配送方案&#xff0c;能够帮助企业满足客户交期、节约运输和库存成本&#xff0c;促进各环节沟通&#xff0c;提高生产稳定性。同时&#xff0c;物流配送的许多…

垃圾回收概述

什么是垃圾 垃圾收集&#xff0c;不是Java语言的伴生产物。早在1960年&#xff0c;第一门开始使用内存动态分配和垃圾收集技术的Lisp语言诞生。 关于垃圾收集有三个经典问题&#xff1a; 哪些内存需要回收&#xff1f;什么时候回收&#xff1f;如何回收&#xff1f; 垃圾收…

9.7 字符串的指针和指向字符串的指针变量

9.7 字符串的指针和指向字符串的指针变量 一.字符串表示形式二.字符串指针做函数参数1.数组名做函数参数2.数组指针做函数参数 三.字符指针变量与字符数组&#xff08;1&#xff09;字符数组是由若干个元素组成&#xff0c;每个元素中存放一个字符。&#xff08;2&#xff09;赋…

[HBZ分享] 小米手机如何解BL锁

第一步&#xff1a; 进入【设置—>我的设备–>全部参数–>连续疯狂的点MIUI版本那一行】 第二步&#xff1a;进入【更多设置–>开发者模式】&#xff0c;打开USB调试 与 USB安装 第三步&#xff1a;进入【更多设置–>开发者模式】&#xff0c;进入【设别解锁状…

人工神经网络

1. 单个神经元 &#x1f351; 神经网络 即 模型 &#x1f364; 输入 四个参数 --> 结果 &#x1f351; 模型训练(学习) 例子 &#x1f351; 模型的输入x 乘 权值ω 减去阈值θ --> 激活函数 f &#x1f351; 输出 yi &#xff08;向下传递 或 直接输出&#xff09; …

JVM性能监测工具-JConsole

JVM性能监测工具-JConsole JConsole工具是JDK自带的图形化性能监控工具。并通过JConsole工具&#xff0c; 可以查看Java应用程序的运行概况&#xff0c; 监控堆信息、 元空间使用情况及类的加载情况等。 JConsole程序在%JAVA_HOM E%/bin目录下 或者你可以直接在命令行对他进…

【致敬未来的攻城狮计划】— 连续打卡第十天:FSP固件库开发及FSP配置详解。

系列文章目录 1.连续打卡第一天&#xff1a;提前对CPK_RA2E1是瑞萨RA系列开发板的初体验&#xff0c;了解一下 2.开发环境的选择和调试&#xff08;从零开始&#xff0c;加油&#xff09; 3.欲速则不达&#xff0c;今天是对RA2E1 基础知识的补充学习。 4.e2 studio 使用教程 5.…

手势语言识别模型训练及应用

使用训练集训练模型&#xff0c;使模型能够识别不同手势。 OpenCV-Python环境使用训练集训练模型&#xff0c;使模型能够识别不同手势。系统测试 本项目基于卷积神经网络&#xff0c;通过Python的翻转功能沿垂直轴翻转每个图像&#xff0c;实现手势语言识别的功能。系统流程如图…

数据治理与数据中台架构

随着工业 4.0 时代的到来&#xff0c;传统行业的数字化转型是大势所趋&#xff1b;将数据提高到数据要素层面&#xff0c;让传统的技术在新的场景下发挥出新的作用&#xff0c;是近期研究和探讨的焦点话题。数语科技支持和服务传统行业多年&#xff0c;聚焦于传统数据建模和数据…

catkin_make_workspace

ERROR1 : CMake Error at /opt/ros/melodic/share/cv_bridge/cmake/cv_bridgeConfig.cmake:113 (message): Project ‘cv_bridge’ specifies ‘/usr/include/opencv’ as an include dir, which is not found. It does neither exist as an absolute directory nor in ‘${{pr…

.net6 core web项目发布部署到Linux,以守护进程服务的形式部署启动,nginx实现转发

一、发布项目 1、以文件夹形式 2、目标运行时选对应的平台&#xff08;Linux-x64&#xff09; 3、文件夹选项&#xff1a;在发布前删除所有现有文件 二、部署项目&#xff08;安装.net6环境&#xff1a;参考Linux安装 dotnet sdk 6.0&#xff09; &#xff08;1&#xff09;…

网络基础,InetAddress,Socket,TCP,UDP

概念&#xff1a;两台设备之间通过网络实现数据运输网络通信&#xff1a;将数据通过网络从一台设备传输到另一台设备java.net包下提供了一系列的类或接口&#xff0c;供程序员使用&#xff0c;完成网络通信网络&#xff1a;两台或多台设备通过一定物理设备连接起来构成了网络根…

Scala中的Map 集合详解

目录 一、不可变长Map集合 1.map的声明与遍历 2.map的常用方法&#xff1a;get、getOrElse、keys、values、、&#xff1a; 二、可变长Map集合 三、Map的其他方法 key -> value 的语法形式实际上是用库中的隐式转换实现的&#xff0c;实际调用了 Map.apply 方法。Map.a…

盘点并发编程的12种业务场景,面试别再说你不会并发了

前言 并发编程是一项非常重要的技术&#xff0c;无论在面试&#xff0c;还是工作中出现的频率非常高。 并发编程说白了就是多线程编程&#xff0c;但多线程一定比单线程效率更高&#xff1f; 答&#xff1a;不一定&#xff0c;要看具体业务场景。 毕竟如果使用了多线程&…

力扣sql中等篇练习(十一)

力扣sql中等篇练习(十一) 1 好友申请|| :谁有最多的好友 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 # 出现数字次数越多,就代表它的好友越多 # 对两列数据合并时 不取出合并数据,采用UNION ALL SELECT t1.id,count(*) num FROM (SELECT request…

FreeRTOS - 计数信号量

一.任务功能 1、修改按键功能&#xff0c;模拟停车位出入功能 2、当按键按下 获取车位 3、当按键抬起 释放车位 二.API接口 函数原型SemaphoreHandle_t xSemaphoreCreateCounting( ①UBaseType_t uxMaxCount,②UBaseType_t uxInitialCount );功能概述创建计数信号量&#xff0c…

玩转ChatGPT:辅助编程

一、写在前面 首先让小Chat介绍自己在编程方面的天赋&#xff1a; 总结起来&#xff1a;TA掌握了海量的编程知识&#xff0c;能做到自动代码生成、代码审查优化、编程教学辅导以及实时问题解答。我问TA学习了多少案例&#xff0c;TA说&#xff1a;忘了&#xff0c;但保证够用。…