BOM知识

YOLOv8魔改网络后训练全零?别慌,关掉AMP混合精度训练试试 本文探讨了YOLOv8魔改网络后训练出现全零指标的问题,指出AMP混合精度训练与自定义网络结构的不兼容性。通过分析梯度消失现象和AMP工作原理,提供了关闭AMP、调整学习率等解决方案,并建议预防性开发实践以避免类似问题。 阅读详情

BOM

什么是BOM

即浏览器对象模型——它提供了独立于内容而与浏览器窗口进行交互的对象

BOM的构成

BOM 比 DOM 更大,它包含 DOM
包含document、location、navigation、screen、history

顶级对象window

概念:是访问浏览器窗口的一个接口——是全局变量。调用时可以省略

window对象的常见事件

页面加载

window.onload——当文档内容完全加载完成会触发该事件
注:1、可以把js写在页面元素上面 2、只能写一个,多个以最后一个为准 3、使用addEventListener没有限制

DOMContentLoaded——事件触发时,仅当DOM加载完成
如果页面的图片很多的话,用 DOMContentLoaded 事件比较合适

调整窗口大小事件

window.onresize 是调整窗口大小加载事件,  当触发时就调用的处理函数
window.innerWidth 当前屏幕的宽度

定时器
setTimeout() 炸弹定时器,单位是毫秒
语法:

window.setTimeout(调用函数,[延迟的秒数]);

停止定时器
clearTimeout(),里面的参数是定时器的标识符

setInterval() 闹钟定时器——每隔设定的时间,去调用一次回调函数
停止定时器——clearInterval(),里面的参数是定时器的标识符

this指向问题

this的最终指向的是那个调用它的对象
全局作用域或者普通函数中this指向全局对象window(注意定时器里面的this指向window)
方法调用中谁调用this指向谁
构造函数中this指向构造函数的实例

location对象

window对象给我们提供了一个location属性用于获取或设置窗体的URL

URL——统一资源定位符
location 对象的属性
location.href 获取或设置整个URl
location.search 放回参数

location对象的常见方法
location.assign 跟href一样,可以跳转页面
location.replace 替换当前页面,因为不能记录历史,不能后退历史记录
location.reload 重新加载页面

navigator对象

navigator 对象包含有关浏览器的信息
最常用的是 userAgent,该属性可以返回由客户机发送服务器的 user-agent 头部的值

history对象

与浏览器历史记录进行交互
        back() 后退
        forward()前进
        go(参数)前进后退功能

Web APIs

元素偏移量 offset

offset 概述 
                1. 获得元素距离带有定位父元素的位置
                2. 获得元素自身的大小(宽度高度)
                3. 注意:返回的数值都不带单位

offset 属性
                element.offsetParent  返回带有定位的父级元素
                .offsetTop 返回带有定位的父级元素上方的偏移
                .offsetLeft 返回带有定位的父级元素的左边偏移
                .offsetWidth 返回自身包括padding、边框、内容的宽度
                .offsetHeight 返回自身包括padding、边框、内容的高度

offset 与 style 区别 
                offset
                    - offset 可以得到任意样式表中的样式值
                    - offset 系列获得的数值是没有单位的
                    - offsetWidth 包含padding+border+width
                    - offsetWidth 等属性是只读属性,只能获取不能赋值
                    - > 所以,我们想要获取元素大小位置,用offset更合适
                style
                    - style 只能得到行内样式表中的样式值
                    - style.width 获得的是带有单位的字符串
                    - style.width 获得不包含padding和border 的值
                    - style.width 是可读写属性,可以获取也可以赋值
                    - > 所以,我们想要给元素更改值,则需要用style改变
                    > **因为平时我们都是给元素注册触摸事件,所以重点记住 targetTocuhes**

元素可视区 client 系列

client概述
通过 client系列的相关属性可以动态的得到该元素的边框大小、元素大小等

client属性
                element.clientTop 返回元素上边框的大小
                .clientTop 返回元素左边框的大小
                .clientWidth 返回自身包括padding、内容不包扣边框的宽度,返回数值不带单位
                .clientHeight 返回自身包括padding、内容不包扣边框的高度,返回数值不带单位

元素滚动 scroll 系列

scroll 概述
使用 scroll 系列的相关属性可以动态的得到该元素的大小、滚动距离等

scroll 属性
                element.scrollTop 返回被卷去的上侧距离,返回数组不带单位
                element.scrollLeft 返回被卷去的左侧距离,返回数组不带单位
                element.scrollWidth 返回自身的实际宽度,不含边框,返回数组不带单位
                element.scrollHeight 返回自身实际的高度,不含边框,返回数组不带单位

页面被卷去的头部
                当滚动条向下滚动时,页面上面被隐藏掉的高度,我们就称为页面被卷去的头部
                滚动条在滚动时会触发 onscroll事件
                window.pageYOffset——整个页面被卷去的头部
                window.pageXOffset——页面左肩

三大系列总结

对比
                offsetWidth 能返回边框
                clientWidth 不能返回边框
                scrollWidth 不能返回边框,能返回元素真实的内容宽度(溢出文本的宽度)

用法:
                1.offset系列 经常用于获得元素位置    offsetLeft  offsetTop
                2.client经常用于获取元素大小  clientWidth clientHeight
                3.scroll 经常用于获取滚动距离 scrollTop  scrollLeft  
                4.注意页面滚动的距离通过 window.pageXOffset  获得

mouseenter 和mouseover的区别

- 当鼠标移动到元素上时就会触发mouseenter 事件
- 类似 mouseover,它们两者之间的差别是
- mouseover 鼠标经过自身盒子会触发,经过子盒子还会触发。mouseenter  只会经过自身盒子触发
- 之所以这样,就是因为mouseenter不会冒泡
- 跟mouseenter搭配鼠标离开 mouseleave  同样不会冒泡

动画函数封装

原理 

通过定时器 setInterval() 不断移动盒子位置

实现步骤:
            1. 获得盒子当前位置
            2. 让盒子在当前位置加上1个移动距离
            3. 利用定时器不断重复这个操作
            4. 加一个结束定时器的条件
            5. 注意此元素需要添加定位,才能使用element.style.left
注:开启多个定时器会使元素速度越来越快,先清除以前的定时器,只保留当前的一个定时器执行

缓动效果原理  

1. 让盒子每次移动的距离慢慢变小,速度就会慢慢落下来。
2. 核心算法: (目标值 - 现在的位置)   /  10    做为每次移动的距离步长
3. 停止的条件是: 让当前盒子位置等于目标位置就停止定时器  
4. 注意步长值需要取整  
当我们点击按钮时候,判断步长是正值还是负值:

正值:Math.ceil()向上取整
负值:Math.floor() 向下取整

添加回调函数

回调函数原理:函数可以作为一个参数。将这个函数作为参数传到另一个函数里面,当那个函数执行完之后,再执行传进去的这个函数,这个过程就叫做回调。
            回调函数写的位置:定时器结束的位置。
节流阀
目的:当上一个函数动画内容执行完毕,再去执行下一个函数动画,让事件无法连续触发
实现思路:利用回调函数,添加一个变量来控制,锁住函数和解锁函数
格式: 

开始设置一个变量var flag= true;

If(flag){flag = false; do something}       关闭水龙头

利用回调函数动画执行完毕, flag = true     打开水龙头

 触屏事件

概述 

不需要考虑以前 JS 的兼容性问题,可以放心的使用原生 JS 书写效果
触屏事件 touch(也称触摸事件),Android和 IOS 都有
touch 对象代表一个触摸点

常见的触屏事件

touchstart 手指触摸到一个DOM元素时触发
touchmove 手指在一个DOM元素是滑动时触发
touchend 手指从一个DOM元素上移开时触发

触摸事件对象(TouchEvent)

TouchEvent 是一类描述手指在触摸平面(触摸屏、触摸板等)的状态变化的事件
这类事件用于描述一个或多个触点,使开发者可以检测触点的移动,触点的增加和减少,等等
            touches 正在触摸所有手指的一个列表
            targetTouches 正触摸当前DOM元素上的手指的一个列表
            changedTouches 手指状态发生改变的列表 无到有、有到无

classList 属性

classList属性是HTML5新增的一个属性,返回元素的类名
            添加类:element.classList.add(’类名’);
            移除类:element.classList.remove(’类名’);
            切换类:element.classList.toggle(’类名’);
注意:以上方法里面,所有类名都不带点

移动端常用开发插件

什么是插件

JS 插件是 js 文件,它遵循一定规范编写,方便程序展示效果,拥有特定功能且方便调用
特点:它一般是为了解决某个问题而专门存在,其功能单一,并且比较小

fastclick 插件解决 300ms 延迟——GitHub官网地址: https://github.com/ftlabs/fastclick

Swiper 插件的使用

中文官网地址: https://www.swiper.com.cn/ 
            1.  引入插件相关文件。(不同版本的引用文件名不一样,注意查看)
            2.  按照规定语法使用

其他移动端常见插件

lsuperslide: http://www.superslide2.com/
l iscroll: https://github.com/cubiq/iscroll

移动端视频插件 zy.media.js——通过 JS 修改元素的大小、颜色、位置等样式

移动端常用开发框架

概念

框架,顾名思义就是一套架构,它会基于自身的特点向用户提供一套较为完整的解决方案
使用者要按照框架所规定的某种规范进行开发
前端常用的框架有 Bootstrap、Vue、Angular、React 等。既能开发PC端,也能开发移动端

Bootstrap使用步骤:

1.引入相关js 文件
2.复制HTML 结构
3.修改对应样式
4.修改相应JS 参数

本地存储

特性

1、数据存储在用户浏览器中
2、设置、读取方便、甚至页面刷新不丢失数据
3、容量较大,sessionStorage约5M、localStorage约20M
4、只能存储字符串,可以将对象JSON.stringify() 编码后存储

window.sessionStorage
            1、生命周期为关闭浏览器窗口
            2、在同一个窗口(页面)下数据可以共享
            3、以键值对的形式存储使用

window.localStorage
            1、声明周期永久生效,除非手动删除 否则关闭页面也会存在
            2、可以多窗口(页面)共享(同一浏览器可以共享)
            3.  以键值对的形式存储使用

存储数据:sessionStorage(localStorage).setItem(key, value)
获取数据:sessionStorage(localStorage).getItem(key)
删除数据:sessionStorage(localStorage).removeItem(key)
清空数据:(所有都清除掉)sessionStorage(localStorage).clear()

相机光学(三十八)——VCM(Voice Coil Motor)音圈马达 VCM(Voice Coil Motor)音圈马达全称Voice Coil Montor,电子学里面的音圈电机,是马达的一种。因为原理和扬声器类似,所以叫音圈电机,具有高频响、高精度的特点。其主要原理是在一个永久磁场内,通过改变马达内线圈的直流电流大小,来控制弹簧片的拉伸位置,从而带动上下运动。手机摄像头广泛的使用VCM实现自动对焦功能,通过VCM可以调节镜头的位置,呈现清晰的图像。弹片式结构滚珠式结构摩擦式结构Open loop开马达Close loop闭环马达。 阅读详情

相关推荐

workbench拓扑优化教程_拓扑优化实例-轮毂的优化

拓扑优化实例-轮毂的优化ANSYS Workbench的新版本集成了topology optimization模块,为用户的拓扑优化提供的很好的应用。通过拓扑优化topology optimization模块的使用可以对拓扑有较好的理解,该模块拓扑优化可以简单概括为一句话:如何在合适的位置去除确定的材料使用量,而相应的刚度变化影响最小。本例以汽车轮毂为例,来确定轮毂的辐条形状。1.建立模型DM中可...

weixin_39581739的博客 3043

记录关于获取宽高以及距离父元素距离的方法

记录关于获取宽高以及距离父元素距离的方法记录原因,在拖动的时候经常会使用到距离父元素的距离,以及宽高等一些方法。offsetWidth,offsetHeight,offsetTop,offsetLeft等相关属性。关于offsetWidth和offsetHight 、 offsetTop和offsetLeft关于clientWidth和clientHeigh 、 clientTop和clientL...

weixin_43831261的博客 4692

NLP-Beginner 任务一:基于机器学习的文本分类(超详细!!)

NLP-Beginner 任务一:基于机器学习的文本分类传送门一. 介绍1.1 任务简介1.2 数据集1.3 流程介绍二. 特征提取2.1 词袋特征(Bag-of-word)2.2 N元特征 (N-gram)三. 最优化求解3.1 Softmax回归介绍3.2 损失函数3.3 梯度下降3.4 学习率四. 代码及实现4.1 实验设置4.2 结果展示4.3 代码新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、

0oTedo0 9931

九、JavaScript网页特效 - 章节课后练习题及答案

JavaScript网页特效 - 章节课后练习题及答案,使用的是人民邮电出版社出版的《JavaScript+jQuery 交互式 Web 前端开发》书籍。

熊先森的博客 8543

SAP MIRO发票自动化:BAPI_INCOMINGINVOICE_CREATE实战解析

本文深入解析了如何使用SAP标准BAPI_INCOMINGINVOICE_CREATE实现MIRO发票校验流程的自动化。通过实战代码示例,详细阐述了从采购订单和收货凭证获取数据、构建BAPI核心参数、处理常见错误到高级场景优化的完整路径,旨在帮助SAP开发人员构建稳定、高效的自动化解决方案,提升财务处理效率与准确性。

weixin_29243279的博客 499

python实现纵横向拉开档次法 (附完整源码)

python实现纵横向拉开档次法 (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 778

js 偏移量相关

一.offset 先确定父元素之后才会计算值 父元素的查找:会先从最近的父元素开始,如果父元素并没有定位(position值为fixed absolute 或者relative)则会再往上一级查找,找到则停止,否则一直查找到html下的body并将body作为父元素. 换句话说就是offset只受有定位的父元素(position值为fixed absolute 或者relative)和自身所在offsetparent位置影响 元素.offsetTop : 子元素距离...

Alienkp的博客 1671

Prompt Engineering 学习指南:从入门到精通的最佳路径与资源

随着大型语言模型(LLM)能力的飞速发展,Prompt Engineering(提示工程)已成为人与AI协作的核心技能。本报告旨在为不同水平的学习者提供一条清晰、高效的学习路径,整合了当前社区公认的最佳实践和顶级开源资源,帮助您系统地掌握 Prompt Engineering,释放 LLM 的全部潜力。保持好奇心,不断尝试,您将能驾驭语言模型这一强大的工具,创造出前所未有的价值。超越简单的“一问一答”,学习如何将 Prompt Engineering 与外部工具和数据结合,构建强大的 AI 应用。

shiter编写程序的艺术 698

js获取元素的距离父元素、窗口的距离offsetTop,offsetHeight,clientHeight

前言 相信很多项目中都会有这样一个小需求(PC端,移动端则是点击),鼠标移上某个菜单或者某个位置,显示一个弹出框,移开则隐藏弹出框,就是css中hover效果,这种通常做法是每个子菜单下都有一个弹框,父元素相对定位,子元素绝对定位,只需要控制的弹框的显示与隐藏即可,但是,当鼠标移动到边界的菜单上时,弹框可能会超出外部元素的范围,如下图: ...

weixin_34208185的博客 1万+

鱼鹰优化算法(OOA)详解:从猛禽捕食智能到优化算法实现

鱼鹰优化算法(Osprey Optimization Algorithm, OOA)是2023年提出的一种新型元启发式优化算法,灵感来源于鱼鹰(一种中型猛禽)高效的捕食策略。算法模拟了鱼鹰从空中识别水下鱼类位置并俯冲捕食,然后将捕获的鱼带至安全位置享用的全过程,以此抽象出全局探索和局部开发两个核心阶段。OOA算法具有参数少、结构简单、收敛速度快、全局寻优能力强等特点。自提出以来,已在函数优化、机器学习参数调优(如CatBoost模型)、路径规划等多个领域展现出良好性能,为解决复杂优化问题提供了新的有效工具。

qq_42212808的博客 273

ICML-2025《Learning from Sample Stability for Deep Clustering》

用于指导深度聚类模型的训练,从而提升模型对困难样本的学习能力,最终改善整体聚类性能。首先,利用K-means在原始样本(非增强)的表征上进行聚类,得到初始聚类分配。其目的是鼓励模型对同一稳定样本在连续epoch中产生相近的表征。输出差异大)会产生更大的损失值,从而引导模型优先优化这些困难样本。此损失借鉴了NT-Xent损失的思想,但将正样本对定义为。最后,通过对比学习优化聚类中心,将同一聚类在。为了获得更具代表性的聚类中心,论文提出。为了学习更鲁棒的表征,模型在在线网络。首先,论文定义了样本。

Christo的博客 828

获取元素宽高和距离定位父级的距离

获取元素宽/高和距离定位父级的距离 获取元素宽高 offsetWidth/offsetHeight获取元素的宽度和高度(包含边框和内边距) clientLeft/clientTop取元素左/上边框宽度 clientWidth/clientHeight获取元素宽度(不包含边框) 计算公式: offsetHeight = 元素高度+元素上内边距+元素下内边距+元素上边框+元素下边框 offsetWidth = 元素宽度+元素左内边距+元素右内边距+元素左边框+元素右边框 clientLeft =

YMX2020的博客 1万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

BOM小知识

BOM浏览器对象模型(Browser Object Model,BOM )作用:能使javascript控制浏览器。

2301_81827214的博客 819

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

[JavaScript] BOM知识点汇总

文章目录一,BOM概述1.1,什么是BOM1.2BOM的构成二,window对象的常见事件2.1窗口加载事件2.2调整窗口大小事件三,定时器3.1两种定时器3.2停止定时器3.3this四,JS执行机制4.1JS是单线程4.2同步和异步4.4JS执行机制顺序五,location对象5.1什么是location5.2URL5.3location对象属性5.4 location方法六,history对象 一,BOM概述 1.1,什么是BOM BOM浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互

weixin_46076151的博客 564

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

BOM知识点总结

-------整理笔记参考黑马程序员pink老师视频---------

m0_75045463的博客 563

Javascript BOM,DOM 知识简介

是一套操作浏览器窗口的 API,用于控制浏览器的行为。文档对象模型, 将标记语言的各个组成部分封装成对象.如果属性已存在,则更新它的值,不存在则新建并设置。// 将新元素添加到 list 容器中。// 创建新的 <p> 元素。页面中的标签就是元素(浏览器解析后,会形成。

2301_80165178的博客 623

剔除不用的BOM知识,只总结js中必会的BOM核心内容

剔除不用的BOM知识,只总结js中必会的BOM核心内容

啊华前端博客-WEB前端笔记 304

BOM与物料编码知识汇总

BOM与物料编码知识汇总 去发现同类优质开源项目:https://gitcode.com/ 此文件为《BOM与物料编码.pdf》,它是根据BOM相关内训资料整理而成的一份专业PDF文档。该文档详尽地介绍了BOM(物料清单)的基本概念、结构、作用以及物料编码的原则、方法和应用,旨在帮助读者系统地理解和掌握BOM与物料编码的相关知识和技能。 去发现同类优质开源项目:https://gitcode.c...

gitblog_06775的博客 349

BOM事件基础知识

文章目录1. BOM 概述1.1 什么是 BOM1.2 BOM 的构成 1. BOM 概述 1.1 什么是 BOM BOM ( Browser Object Model ) 即浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是 window。 BOM 由一系列相关的对象构成,并且每个对象都提供了很多方法与属性。 BOM 缺乏标准,JavaScript 语法的标准化组织是 ECMA,DOM 的标准化组织是 W3C,BOM 最初是 Netscape 浏览器标准的一部分。 1.2 BO

ybs0211的博客 1262

前端知识点总结——BOM

前端知识点总结——BOM 1.BOM: Browser Object Model 什么是: 专门操作浏览器窗口的API 没有标准, 导致浏览器兼容性问题 包括: window history location navigator dom event screen 2.window: 属性: .innerWidth, ...

weixin_34203426的博客 123

BOM知识整理

来自:http://www.cnblogs.com/xing901022/p/4776697.html JS BOM知识整理  BOM部分主要是针对浏览器的内容,其中常用的就是window对象和location,   window是全局对象很多关于浏览器的脚本设置都是通过它。   location则是与地址栏内容相关,比如想要跳转到某个页面,或者通过UR

Prince_fmx的博客 916

JavaScript - BOM对象知识图谱

JavaScript - window对象知识图谱

半夏半暖半倾城的博客 396

JavaScript BOM(浏览器对象模型)知识点总结与示例

JavaScript BOM(浏览器对象模型)知识点总结与示例

Z09111616的博客 781

关于BOM和DOM知识的基本了解

关于BOM和DOM知识的基本了解 BOM: 1. 概念:Browser Object Model 浏览器对象模型 * 将浏览器的各个组成部分封装成对象。 2. 组成: * Window:窗口对象 * Navigator:浏览器对象 * Screen:显示器屏幕对象 * History:历史记录对象 * Location:地址栏对象 3. Window:窗口对象 1. 创建...

ytqdxinshou的博客 188

JavaScript- BOM和DOM知识点总结

BOM(brower object model) 浏览器对象模型 常见对象 window window的子对象 document 文档对象(表示整个HTML文档内容) location(地址栏url对象) 获取地址栏的内容 属性 href 地址栏完整链接 host hostname 主机 pathname 文件路径 hash 锚点 port 端口号 protocol 协议 orgin 跨域相关 方法 assign 跳转方法 replace 替换url的方法 常见的

OuYyds的博客 298

bom event周期_前端知识点总结——BOM

前端知识点总结——BOM1.BOM: Browser Object Model什么是: 专门操作浏览器窗口的API没有标准, 导致浏览器兼容性问题包括:windowhistorylocationnavigatordomeventscreen2.window:属性: .innerWidth, .innerHeight 浏览器窗口中,文档显示区的宽和高方法: .open() .close() .o...

weixin_39770506的博客 176
上一篇: 事件高级知识
下一篇: swiper插件的使用
MoYuP_ENG
博客等级 码龄5年 136粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值