当前位置: 首页 > news >正文

揭阳专业的网站建设价格广西金利建设有限公司网站

揭阳专业的网站建设价格,广西金利建设有限公司网站,建站哪个便宜,wordpress 主题错误Web APIs 2 事件 事件监听案例#xff1a;广告关闭案例#xff1a;随机问答 事件监听版本事件类型案例#xff1a;轮播图完整焦点事件键盘事件输入事件案例#xff1a;评论字数统计 事件对象获取事件对象事件对象常用属性案例#xff1a;评论回车发布 环境对象this回调函数… Web APIs 2 事件 事件监听案例广告关闭案例随机问答 事件监听版本事件类型案例轮播图完整焦点事件键盘事件输入事件案例评论字数统计 事件对象获取事件对象事件对象常用属性案例评论回车发布 环境对象this回调函数综合案例tab栏切换全选反选案例 事件监听 什么是事件 事件是在编程时系统内发生的动作或者发生的事情 比如用户在网页上单击一个按钮 什么是事件监听 就是让程序检测是否有事件产生一旦有事件触发就立即调用一个函数做出响应也称为 绑定事件或者注册事件 比如鼠标经过显示下拉菜单比如点击可以播放轮播图等等 语法 元素对象.addEventListener(事件类型, 要执行的函数)事件监听三要素 事件源 那个dom元素被事件触发了要获取dom元素 事件类型 用什么方式触发比如鼠标单击 click、鼠标经过 mouseover 等 事件调用的函数 要做什么事 // 事件源 按钮 const btn document.querySelector(button)// 事件类型 // 事件处理程序 btn.addEventListener(click, function() { alert(hi) })案例广告关闭 点击关闭广告刷新之后广告又出现 bodydiv classbox我是广告div classbox1X/div/divscript// 1. 获取事件源const box1 document.querySelector(.box1)// 关闭的是大盒子const box document.querySelector(.box)// 2. 事件侦听box1.addEventListener(click, function () {box.style.display none})/script /body案例随机问答 业务: 点击开始后,随机闪现所有人的名字,点击结束,停止在一个人名,并删除这个元素. 业务分析 ① 点击开始按钮随机抽取数组的一个数据放到页面中 ② 点击结束按钮删除数组当前抽取的一个数据 ③ 当抽取到最后一个数据的时候两个按钮同时禁用写点开始里面只剩最后一个数据不用抽了 核心 利用定时器快速展示停止定时器结束展示 bodyh2随机点名/h2div classboxspan名字是/spandiv classqs这里显示姓名/div/divdiv classbtnsbutton classstart开始/buttonbutton classend结束/button/divscript// 数据数组const arr [马超, 黄忠, 赵云, 关羽, 张飞]// 业务1 开始按钮模块// 点击开始按钮之后,通过随机数随机选取数组中的名字,并显示在网页中let timer 0const start document.querySelector(.start)const qs document.querySelector(.qs)let random 0start.addEventListener(click,function() {// 每次点击按钮都会有一个新的定时器,点击结束按钮只会关闭最后一个定时器timer setInterval(function() {random Math.floor(Math.random()*arr.length)// arr[random]qs.innerHTML arr[random]}, 50) if(arr.length 1) {start.disabled end.disabled true}})// 业务2 结束按钮模块const end document.querySelector(.end)end.addEventListener(click,function() {clearInterval(timer)arr.splice(random,1)})/script /body 垃圾回收机制函数执行结束之后不再使用这个变量会自动删除 //这段代码不会报错因为垃圾回收机制 //html: buttonbtn/button//script const btn document.querySelector(button) btn.addEventListener(click,function() {const num Math.random()console.log(num) })//这段代码不会报错因为作用域不一样 const num 10const btn document.querySelector(button) btn.addEventListener(click,function() {const num Math.random()console.log(num) })事件监听版本 DOM Level 0 事件源.on事件 function() { } DOM Level 2 事件源.addEventListener(事件 事件处理函数) 区别 on方式会被覆盖addEventListener方式可绑定多次拥有事件更多特性推荐使用 发展史 DOM L0 是 DOM 的发展的第一个版本 Llevel DOM L1DOM级别1 于1998年10月1日成为W3C推荐标准 DOM L2使用addEventListener注册事件 DOM L3 DOM3级事件模块在DOM2级事件的基础上重新定义了这些事件也添加了一些新事件类型 事件类型 事件监听三要素事件源、事件类型、事件调用的函数 //html //div/div//css div {width:200px;height:200px;background-color:pink; }//javascript const div document.querySelector(div) //鼠标经过 div.addEventListener(mouseenter,function() {console.log(轻轻的我来了) }) //鼠标离开 div.addEventListener(mouseleave,function() {console.log(轻轻的我走了) })案例轮播图完整 需求当点击左右的按钮可以切换轮播图 分析 ①右侧按钮点击变量如果大于等于8则复原0 ②左侧按钮点击变量–如果小于0则复原最后一张 ③鼠标经过暂停定时器 ④鼠标离开开启定时器 业务分析左侧按钮、右侧按钮、鼠标经过、自动播放 焦点事件 bodyinput typetext /body scriptconst input document.querySelector(text)input.addEventListener(focus,function() {console.log(haha);}) /script小米搜索框案例 需求当表单得到焦点显示下拉菜单失去焦点隐藏下来菜单 !DOCTYPE html html langenheadmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlestyle* {margin: 0;padding: 0;box-sizing: border-box;}ul {list-style: none;display: none;}.mi {position: relative;width: 223px;margin: 100px auto;}.mi input {width: 223px;height: 48px;padding: 0 10px;font-size: 14px;line-height: 48px;border: 1px solid #e0e0e0;outline: none;}.mi .search {border: 1px solid #ff6700;}.result-list {position: absolute;left: 0;top: 48px;width: 223px;border: 1px solid #ff6700;border-top: 0;background: #fff;}.result-list a {display: block;padding: 6px 15px;font-size: 12px;color: #424242;text-decoration: none;}.result-list a:hover {background-color: #eee;}/style/headbodydiv classmiinput typesearch placeholder小米笔记本ul classresult-listlia href#全部商品/a/lilia href#小米11/a/lilia href#小米10S/a/lilia href#小米笔记本/a/lilia href#小米手机/a/lilia href#黑鲨4/a/lilia href#空调/a/li/ul/divscript//属性选择器const input document.querySelector([typesearch])const ul document.querySelector(.result-list)input.addEventListener(focus, function() {ul.style.display blockinput.classList.add(search)})input.addEventListener(blur, function() {ul.style.display noneinput.classList.remove(search)})/script /body/html键盘事件 input typetext script const input document.querySelector(input)input.addEventListener(keydown, function() {console.log(键盘按下了) })input.addEventListener(keyup, function() {console.log(键盘抬起了) }) /script输入事件 得到用户输入的内容通过input.value input typetext script const input document.querySelector(input)input.addEventListener(input, function() {console.log(1111111111) //输入内容console.log(input.value) }) /script案例评论字数统计 需求用户输入文字可以计算用户输入的字数 分析 ①判断用输入事件 input ②不断取得文本框里面的字符长度, 文本域.value.length ③把获得数字给下面文本框 代码 看下文的评论回车发布 focus伪类选择器获得焦点 注不使用 JS使用 CSS 也可以实现 bodyinput typetext /body styleinput {width: 200px;}input:focus {/* 获得光标 */width: 300px;} /style事件对象 获取事件对象事件对象常用属性 事件对象是什么 也是个对象属性 方法这个对象里有事件触发时的相关信息 例如鼠标点击事件中事件对象就存了鼠标点在哪个位置等信息 使用场景 可以判断用户按下哪个键比如按下回车键可以发布新闻按下空格键就不能发 可以判断鼠标点击了哪个元素从而做相应的操作 事件对象在哪里 在事件绑定的回调函数的第一个参数就是事件对象 获取事件对象 语法 在事件绑定的回调函数的第一个参数就是事件对象 一般命名为event、ev、e 元素.addEventListener(click, function(e) { // 这里的e就是事件对象 })例如 // button/button const btn document.querySelector(btn) btn.addEventListener(click, function() {console.log(e); })事件对象常用属性 部分常用属性 type 获取当前的事件类型 clientX/clientY 获取光标相对于浏览器可见窗口左上角的位置 offsetX/offsetY 获取光标相对于当前DOM元素左上角的位置 key 用户按下的键盘键的值。现在不提倡使用keyCode 已经废除 body!-- 回车键触发案例 --input typetext /body scriptconst btn document.querySelector(button)btn.addEventListener(click, function(e) {console.log(e);})const input document.querySelector(input)input.addEventListener(keyup,function(e) {// console.log(e.key);if(e.key Enter) {console.log(我按下了回车键);}}) /script案例评论回车发布 需求按下回车键盘可以发布信息 分析 ①用到按下键盘事件 keydown 或者 keyup 都可以 ②如果用户按下的是回车键盘则发布信息 ③让留言信息模块显示把拿到的数据渲染到对应标签内部 补一个trim方法 只清除左右的空格 const str pink console.log(str) // pink console(str.trim()) // pink代码 bodydiv classwrapperi classavatar/itextarea idtx placeholder发一条友善的评论 rows2 maxlength200/textareabutton发布/button/divdiv classwrapperspan classtotal0/200字/span/divdiv classlistdiv classitem styledisplay: none;i classavatar/idiv classinfop classname清风徐来/pp classtext大家都辛苦啦感谢各位大大的努力能圆满完成真是太好了[笑哭][支持]/pp classtime2022-10-10 20:29:21/p/div/div/div /bodyscript//文本域获得焦点让total显示出来const tx document.querySelector(#tx)const total document.querySelector(.total)tx.addEventListener(focus, function() {total.style.opacity 1})tx.addEventListener(blur, function() {total.style.opacity 0})//检测用户输入tx.addEventListener(input, function() {total.innerHTML ${tx.value.length}/200字})//按下回车发布评论const item document.querySelector(.item)const text document.querySelector(.text)tx.addEventListener(keyup, function(e) {if(e.key Enter) {if(tx.value.trim() ! ) {text.innerHTML tx.valueitem.style.display block}tx.value //清空文本域//按下回车之后 字符统计复原total.innerHTML 0/200字}})/script环境对象this 环境对象 指的是函数内部特殊的变量 this 它代表着当前函数运行时所处的环境 作用 弄清楚this的指向可以让我们代码更简洁 函数的调用方式不同this 指代的对象也不同 【谁调用 this 就是谁】 是判断 this 指向的粗略规则 直接调用函数其实相当于是 window.函数所以 this 指代 window //每一个函数里面都有thisfunction fn() {console.log(this); }fn() // 相当于是 window.fn()所以 this 指代 windowconst btn document.querySelector(button)btn.addEventListener(click, function() {console.log(this); //指向button})回调函数 如果将函数 A 做为参数传递给函数 B 时我们称函数 A 为回调函数 简单理解 当一个函数当做参数来传递给另外一个函数的时候这个函数就是回调函数 过了一秒钟回头调用函数 fn 每click一次调用一次函数 综合案例 tab栏切换 选项卡切换 全选反选案例 用户点击大全选所有的复选框全部选择 用户取消大全选则所有复选框取消 用户选了所有的复选框之后大全选自动选择
http://www.hkea.cn/news/14503302/

相关文章:

  • 建设银行个人网站海口模板建站定制
  • 做网站要素京东购物下载
  • 雄安移动网站做网站怎么别人搜不出来
  • 新网站建设服务建筑行业网站模板
  • 济南 微网站手机网站制作天强科技
  • zencart网站地图插件导航网站织梦模板
  • wordpress 主题排seo推广培训课程
  • 网站做影集安全吗广州企业名单
  • 五屏网站建设如何信阳网站建设的费用
  • 凡科网做网站黄山网络推广哪家好
  • 怎样建企业网站杭州 网站建站
  • 广州番禺区网站建设腾讯企业邮箱免费注册入口
  • 东莞模板建站哪家好西城网站建设浩森宇特
  • 怎么看网站是哪个平台做的怎么给自己做一个网页
  • 网站策划案需要包括哪些品牌咨询
  • 企业网站开发文档西安百度推广开户运营
  • 企业网站开发服务合同产品网站开发流程
  • 网站建设合同 代码应不应该给鄠邑区建设局网站
  • 泰国做网站网站要判几年注册城乡规划师考试时间2023
  • 用360云盘做网站无锡网站维护公司
  • 外贸网站制作需求东莞市企业信息查询网
  • 学校网站建设 应用情况摄影作品投稿平台
  • 遵义在线网站建设乐山建网站
  • 单页面网站怎么优化专业柳州网站建设哪家便宜
  • 做网站和APP需要多少钱在线设计字体
  • 西安建设高端网站网站免费申请建站
  • 留言板网站怎么做廊坊公司快速建站
  • 丹阳网站建设要多少钱桂林 网站 制作
  • 外贸类网站湖北建设执业资格注册中心网站
  • 静态网页做的网站怎么发到网上wordpress网页布局