最新要闻
- 国产CPU与国产OS联合 阿里平头哥加入openKylin社区
- 男子iPhone 13 Pro不到三个月自燃 法院:商品不符合质量要求 可以换新
- 新资讯:《阿凡达2》获知名制作人小岛秀夫好评点赞:能够让人焕发激情
- 当前滚动:进军PC配件!一加将推出旗下首款机械键盘
- 《巫师3》次时代版“史诗升级”:官方Mod工具终于来了
- AMD RX 7900又一非公卡亮相:档次上去了
- 每日热文:女子被绑浇墨汁?官方:自导自演 直播网红为赚流量博人眼球将严惩
- 全球观热点:AMD RX 7900首批供货非常紧张!某品牌明年才能有
- 环球讯息:约4.1万人民币 法国一公司推出氢能电动自行车:像是助力车
- 环球焦点!一加11渲染图被网友恶搞:辨识度拉满
- 中国超越德国成全球第二大出口国!比亚迪自建船队引关注
- 世界快看点丨福建一景区回应多人推山顶“风动石”:重几十吨 风能吹动人推不动它
- 当前快讯:大笔加码越南!三星电子和LG将追加投资数十亿美元建厂
- 世界观点:惊了!研究发现蚂蚁竟也产奶 难道它也是哺乳动物?
- 1.7米长 从头裹到脚:洁丽雅加厚加大浴巾29元抄底
- 天天快播:“售后、周转、维护” 电动自行车换电池“三不要”
手机
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
票房这么火爆,如何请视障人士“看”一场电影?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
- 票房这么火爆,如何请视障人士“看”一场电影?
家电
Javascript-极速入门指南-2-BOM与DOM操作-jQuery简介
内容概要
- BOM操作
- BOM操作基础
- DOM操作
- jQuery类库
BOM操作
BOM操作基础
BOM(Browser Object Model) 是指浏览器对象模型,它使用Javascript有能力与浏览器进行"对话"
- 打开新网页
window.open("http://www.baidu.com") 并且可以填写参数控制打开新网页的大小
window.open("http://www.baidu.com","","width=200px,height=200px")
- 关闭当前浏览器窗口
window.close()
- 标识自己是一个浏览器
navigator.userAgent
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36"
- 前进一页
history.forward()
- 后退一页
history.back()
- 获取当前页面所在的网址,也可以再加赋值符号和网址跳转
window.location.href
"chrome-extension://nnnkddnnlpamobajfibfdgfnbcnkgngh/newtab/index.html"
刷新当前页面
window.location.reload
(资料图片)
警告框
alert()
确认框
confirm()
提示框
prompt()
计时相关操作
1.定时执行任务setTimeout
let time = setTimeout(showMsg,2000) // 2000毫秒(2秒)之后执行showMsg函数clearTimeout(time) // 取消计时任务例:function showMsg(){confirm("你好")}let notice = setTimeout(showMsg,2000)notice
2.定时重复执行setInterval
let time = setInterval(showMsg,2000) //每次间隔2000毫秒(2秒)执行一次showMsg函数clearIntervals(time) // 取消重复任务例:function showMsg(){confirm("你好")}let time = setInterval(showMsg,2000)time
DOM操作
DOM(Document Object Model)是指文档对象模型,通过它可以访问HTML文档的所有元素DOM操作是通过JS代码来操作标签,所以我们需要先学习如何使用JS代码查找标签之后我们才能给一些标签绑定JS代码(DOM操作)
查找标签
// 1.在JS中 变量名的命名风格推荐为驼峰体(小驼峰 => showMsg)// 2.JS中查找到的HTML标签如果需要反复使用可以通过变量名来进行接收! 规律为: xxxEle /*Elements(元素)*/
我们写一些html代码辅助我们演示下面的查找标签功能 Title span span div div>span div>p div>p>span
div>span span span
页面样式
- ID查找器
document.getElementById("d1")因为id在标签中是唯一的,所以Element不需要加s复数
结果就是标签对象本身
- 类名查找器
document.getElementsByClassName("c1")
结果是数组里面含有多个标签对象
- 标签查找器
document.getElementsByTagName("span")
结果是数组里面含有多个标签对象
还有比较多的查找方式,不一个一个演示了!
方法名称 | 说明 |
---|---|
parentElement | 父节点标签元素 |
children | 所有子标签 |
firstElementChild | 第一个子标签元素 |
lastElementChild | 最后一个子标签元素 |
nextElementSibling | 下一个兄弟标签元素 |
previousElementSibling | 上一个兄弟标签元素 |
操作节点(标签)
创建一个标签
let spEle = document.createElement("span")
给标签添加默认属性
spEle.className("s2")
只能添加默认的属性
兼容默认属性和自定义属性
spEle.setAttribute(name,"xiaoming")
操作标签内部文本内容
spEle.innerText("牛郎织女66")
将某个标签追加到标签内部
let divEle = document.getElementsByTagName("div")[0] //因为查询到的是数组,所以需要通过索引取值第一个div标签divEle.appendChild(spEle) // 将刚刚在测试的标签spEle添加进入div标签
方法名 | 说明 |
---|---|
innerText | 获取标签内部所有的文本内容 |
innerText = "文本" | 替换/设置标签内部的文本(不识别标签语法) |
innerHTML | 获取标签内部所有的标签包含文本 |
innerHTML = "文本" | 替换/设置标签内部的文本(识别标签语法) |
获取值操作
同样的我们先编写一下关于获取值操作的html代码,方便我们接下来的演示 Title
针对用户输入的和用户选择的标签
标签对象.value
针对用户上传的文件数据
标签对象.value
标签对象.files
标签对象.files[0]
需要通过此方法获取文件对象,如果有多选的文件对象会自动组成数组!需要通过索引来获取文件对象。
class与css操作
1、 js操作标签css样式
标签对象.style.属性名(下划线没有 变成驼峰体)`inputNameEle.style.color="blue"`
2、js操作标签class属性
classList.remove(cls) // 删除指定类classList.add(cls) // 添加类classList.contains(cls) // 存在返回true,否则返回falseclassList.toggle(cls) // 存在就删除,否则添加
事件
事件我们可以简单的理解为通过 "js" 代码给 "html" 标签绑定一些自定义的功能
常见事件
onclick 当用户点击某个对象时调用的事件句柄 onfocus 元素获得焦点onblur 元素失去焦点onchange 域的内容被改变............
绑定事件的多种方式:
方式1
// 在需要绑定事件的 标签 中 添加事件属性,并绑定触发函数<script> function showMsg(){ confirm("what"s your name?") } </script>
方式2
function showMsg(){confirm("what"s your name?")}let InputNameEle = document.getElementById("username") // 通过id找到标签InputNameEle.onclick = showMsg //通过标签对象点onclick事件,让事件绑定函数即可
事件中的 this
事件函数中的this关键字this指代的就是当前被操作的标签对象本身 如果事件函数内有多层嵌套那么最好在一开始用变量存储一下防止后续变化代码示例:<script> let InputNameEle = document.getElementById("username") InputNameEle.onclick = function (){ this.style.color="green" confirm("看颜色~") }</script>
onload方法
XXX.onload 等待XXX标签加载完毕之后再执行后面的代码
事件实战案例
看了这么多了,做点小练习!!巩固一下前面的知识点吧!
练习1
使用焦点事件及失去焦点事件,对按钮标签进行处理,当鼠标单击按钮时,显示 内容 游戏
当鼠标移除按钮框外时 显示 内容 下次再来
// 1. 首先我们应该创建按钮标签,在上面填写内容// 2.编写js代码 通过id选择器选择该标签// 3.通过绑定onclick事件与onblur事件完成需求 <script> let InputButtonEle = document.getElementById("button") InputButtonEle.onfocus = function () { this.value="游戏" } InputButtonEle.onblur = function (){ this.value="下次再来!" } </script>
练习2
获取用户输入账号和密码判断用户输入是否为固定的账号和密码如若输入正确
提示登录成功如若不是提示登录失败
//1.获取输入用户名/密码/提交按钮 标签 对应的标签对象//2.利用onclick事件 在onclick函数中编写验证账号密码是否正确的if判断username:
password:
let InputButtonEle = document.getElementById("res") InputButtonEle.onclick= function () { let InputNameEle = document.getElementById("username") let InputPasswordEle = document.getElementById("password") if (InputNameEle.value === "xiaoming" && InputPasswordEle.value === "123") { confirm("登录成功") } else{ confirm("登录失败") } }
练习3
省市联动我们现在的需求为:现有两个选择省份以及区的下拉框要求我们在选择省份之后,省份对应的区下拉框内容需要显示出来
<script> let data = { // 定义省市数据集 "深圳": ["南山区", "罗湖区"], "北京": ["朝阳区", "海淀区"], "山东": ["青岛市", "烟台市"], "安徽": ["芜湖市", "蚌埠市"], "上海": ["浦东新区", "静安区"] } let selectProELe = document.getElementById("province") let selectDisEle = document.getElementById("district") for (let province in data){ //循环获取省份信息 let proOpEle = document.createElement("option") // 动态根据data数据来创建option标签 proOpEle.innerText=province // 修改下拉框文本域 proOpEle.setAttribute("value",province) // 设置标签value值 selectProELe.appendChild(proOpEle) //将option标签添加到下拉框标签内 } selectProELe.onchange= function () { //文本域变化事件 selectDisEle.innerText="" //每次选择完省份之后,需要把区的内容情况,不然区的内容会一直重复添加在下拉框中 let districtDataList = data[this.value] //获取省份对应的区信息 for (let i in districtDataList){ // 循环区域信息,准备获取省份对应的区域信息 let disOpEle = document.createElement("option") disOpEle.innerText=districtDataList[i] disOpEle.setAttribute("value",districtDataList[i]) selectDisEle.appendChild(disOpEle) } }
类库 jQuery 简介
jQuery的宗旨: Write less, do more 写的更少做的更多jQuery的特点为:1.加载速度快2.选择器更多更好用3.一行代码走天下4.支持ajax请求(重点)5.兼容多浏览器
jQuery 使用教程
jQuery下载与安装
jQuery类似python中的模块由于浏览器默认只认识html css js不认识jquery 需要要使用需要先导入
官网下载
:https://jquery.com/
学习网址
:https://jquery.cuishifeng.cn/下载核心文件到本地引入(没有网络也可以使用)
<script src="jQuery3.6.js"></script>
CDN网络资源加载(必须有网络才可以使用)
https://www.bootcdn.cn/https://cdn.bootcdn.net/ajax/libs/jquery/3.6.1/jquery.jshttps://cdn.bootcdn.net/ajax/libs/jquery/3.6.1/jquery.min.jsjQuery基本介绍
jQuery导入之后需要使用关键字才可以使用默认的关键字就是jQuery但是不好输入 >>>:$ jQuery封装了JS代码 让编写更简单 但是有时候JS代码更快js代码与jQuery代码对比 //js代码 let pEle = document.getElementsByTagName("p")[0] pEle.style.color = "red" pEle.nextElementSibling.style.color = "green" //jQuery代码 $("p").first().css("color","yellow").next().css("color","blue")
标签对象与jQuery对象
1.不同的对象能够调用的方法是不同的在编写代码的时候一定要看清楚手上是什么对象2.两者可以互相转换标签对象转jQuery对象 $(标签对象) jQuery对象转标签对象 jQuery对象[0]
-
Javascript-极速入门指南-2-BOM与DOM操作-jQuery简介
内容概要BOM操作BOM操作基础DOM操作jQuery类库BOM操作BOM操作基础BOM(BrowserObjectModel)是指浏览器对...
来源: Javascript-极速入门指南-2-BOM与DOM操作-jQuery简介
54个CSS重难点整理,12-24篇,进阶高薪必需要掌握的知识点
国产CPU与国产OS联合 阿里平头哥加入openKylin社区
男子iPhone 13 Pro不到三个月自燃 法院:商品不符合质量要求 可以换新
全球热点!java创建线程的唯一方式
第一百一十篇:内存泄漏和垃圾回收(JS)
新资讯:《阿凡达2》获知名制作人小岛秀夫好评点赞:能够让人焕发激情
当前滚动:进军PC配件!一加将推出旗下首款机械键盘
《巫师3》次时代版“史诗升级”:官方Mod工具终于来了
AMD RX 7900又一非公卡亮相:档次上去了
每日热文:女子被绑浇墨汁?官方:自导自演 直播网红为赚流量博人眼球将严惩
left jon连接查询踩坑记
全球观热点:AMD RX 7900首批供货非常紧张!某品牌明年才能有
环球讯息:约4.1万人民币 法国一公司推出氢能电动自行车:像是助力车
环球焦点!一加11渲染图被网友恶搞:辨识度拉满
中国超越德国成全球第二大出口国!比亚迪自建船队引关注
世界快看点丨福建一景区回应多人推山顶“风动石”:重几十吨 风能吹动人推不动它
天天微头条丨没开发人员,接到开发物联网系统的活儿,干不干?
当前快讯:大笔加码越南!三星电子和LG将追加投资数十亿美元建厂
世界观点:惊了!研究发现蚂蚁竟也产奶 难道它也是哺乳动物?
1.7米长 从头裹到脚:洁丽雅加厚加大浴巾29元抄底
天天快播:“售后、周转、维护” 电动自行车换电池“三不要”
环球微动态丨移动端硬件实时光追落地!第二代骁龙8让游戏画面更逼真
快讯:全同态加密是否完美?
力扣刷题03
热门看点:MySQ 8.0 推出直方图,性能大大提升!
记录--uniapp自定义相机 自定义界面拍照录像闪光灯切换摄像头
世界视点!浙里办单点登陆、令牌获取用户信息
【全球热闻】iOS开发证书发布证书,推送证书,描述文件的生成总集(一)
世界今热点:AirPods Pro 2立大功!苹果占据31%真无线耳机市场
天天热议:网友吐槽买瓶饮料都要下载APP 网友:是我我扭头就走
全球热点!Chrome更新置顶横幅通知:明确不再支持Win7/8.1平台
环球速看:价格屠夫 小米4K双99%色域专业显示器2399元(首发3499)
天天快播:日本队更衣室留千纸鹤表感谢!国际足联再感谢日本球迷清理看台引热议 高素质
世界快讯:日产回应车机更新显示文案待定:车联网激活才可正常使用
手机端光追将至:Basemark推出首个移动设备光追基准测试
奇瑞汽车站起来了!连续6月销量超10万 破百万辆大关
小太阳取暖忘断电7分钟烧掉整间屋!官方科普冬季电器使用指南
世界焦点!买到运损保时捷女子要求退一赔三!判了:退车4S店再赔20万
焦点快播:吃肉最毁环境、很不环保?国外动物保护主义者抗议肉食让吃素
“不良剧情直播”污人眼球 抖音出手:禁止虚假炒作、已处罚9万多账号
天天热点!醉驾男遇上碰瓷女:给五万要私了嫌贵 结果双双被拘
4比1送走韩国 巴西球员轮流摸罗纳尔多双腿蹭欧气 “小熊”说要继续跳舞直到决赛
环球微动态丨告别半斤机!小米13全系机身数据出炉:陶瓷/玻璃/素皮集齐了
4比1大胜韩国 巴西队赛后集体为球王贝利祈福 女儿称正从肺部感染康复
咖喱味越来越浓!消息称苹果调整产业链 国行iPhone/iPad印度产会变多
小米13系列海报曝光!标准版设计如何 跟Pro差别较大
环球速讯:网飞期待《狩魔猎人》新季新气象
每日焦点!开眼了!丰田为电动车推出“手动挡”结构 雷克萨斯实车跑山演示
【天天新视野】全球首发第二代骁龙8!vivo X90 Pro+开售:12+512GB顶配6999元
”摆烂模式“成牛津词典2022年度词 今天你摆烂了吗?
环球讯息:韩国球迷用7比1嘲讽巴西最后惨败 亚洲一哥孙兴慜称尽力:网友直言自取其辱
天天视点!7399买吗?AMD RX 7900XTX性能首曝光:对比4080/90结果意外
【全球时快讯】比亚迪纯电神车海豚哥伦比亚发布:405km续航、搭刀片电池
全球热文:11月新能源汽车销量再创新高:比亚迪一骑绝尘 甩远特斯拉
世界热头条丨市场仍低迷!预计2022年全球智能手机出货量下降9.1%
【独家】柯洁直播透露斥巨资进军餐饮:光装修花了1800万 品质、价位无敌
世界今热点:日本点球战2-4负克罗地亚、巴西4-1大胜韩国:亚洲球队世界杯全部出局
“侃爷”怀疑马斯克是半个中国人!本人神回应
你每天都在用的餐具 用错等于慢性“投毒”!小心这7类材料
中国人搞锂到底有多狠?美国都开始耍花招了!
天天日报丨当年那些卖伟哥的垃圾邮件:一天就能赚7000美元!
观焦点:100年前的导演拍出“摘头”特效:就问你服不服
快报:网传上海工厂将主动减产20% 特斯拉回应:不实消息
今热点:长沙一SUV高速上失控狂飙500公里引热议 刹车为何同时失灵?专家释疑
小米上一代旗舰12S Pro降至4699元!传小米13也差不多卖这价
世界微动态丨电费飙升 日本最强超算用不上起了:临时关闭30%节点
2022十佳游戏公布:第一名《战神5》
全球要闻:女子头胎生龙凤胎 2胎又生双胞胎:众网友顶礼膜拜
国服花落谁家?暴雪心血大作《暗黑破坏神4》:要正式来了
NVIDIA坐不住了:要用1年时间干掉游戏显卡市场一切乱象
天天微资讯!仅上线不到一年!字节跳动旗下阅读App识区宣布停运
连续泄露小米13真机!百万粉汽车大V公开道歉 愿意接受处罚
【世界报资讯】恒驰汽车累计被执行超1亿元 研究院曾同一天5次成老赖
【天天新视野】日本神嘴鹦鹉冲上微博热搜榜:预测日本晋级
上海一轿车冲下数十米高架:车顶塌陷、摔成铁饼
手机飞行模式将成过去时 欧盟明年允许飞机上开5G
荣耀Magic Vs推出个性化服务:手机铰链处可自定义镌刻
每日速看!小直屏+直边方向对了!小米13预约数领先Pro版:核心配置完全同步
世界信息:加码VR头显!苹果大力招募神经渲染研究人员
米粉建议小米13发布会直接说价格 魏思琪:料还有很多
妈妈带女儿在自家保时捷上作画:网友质疑
讯息:今晚油价“二连降”!92号汽油重回“7元时代”:加满少花17.5元
元旦假期还有三周时间 机票平均价格上涨30%:贵过黄金周
小米在德国推出米家烹饪机器人!看到价格我就放心了
RTX 4080被曝要降价了!可不是惧怕AMD RX 7900
天天资讯:米粉谈小米12S Ultra给他的最大印象:拍照不可思议
爱美不容易!穿错高跟鞋可能会带来身体伤害:弓形腿、骨盆前倾
全球微资讯!氢能源真是未来?丰田海拉克斯氢燃料电池版发布:坐在气罐上开
微星笔记本双12活动来袭:学生再享立减100+三期免息
天天热议:报告:特斯拉美国车主更易遭路怒症找茬 有车主一月被别八次
环球视讯!联想搭建 美国全新高性能计算机成全球史上能效最高产品
车主打开特斯拉“宠物模式” 将牧羊犬留在车内!回来一看崩溃
全球快看点丨内马尔iPhone 14 Pro大力神杯壁纸引热议:明晨或伤愈回归出战韩国队
世界今亮点!仅11kg通勤神器 九号电动滑板车跌破千元:直降600元
天天快看点丨日系车慌不慌?比亚迪进军日本:首车确认为元Plus 23万
每日速递:近10年显卡涨价多恐怖?GTX780到RTX4090/80 售价快翻一倍 NV血赚
焦点观察:合资中型轿车新敌 国产豪华红旗H6实车亮相:罕见双中置排气
焦点关注:10.3英寸大屏加持!联想YOGA Paper墨水平板开启预售:到手2699元
潮州特斯拉“失控”撞人事故进展:车主仍未拿到数据 鉴定机构不一般