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

asp婚纱摄影网站源码广告牌样式图片大全

asp婚纱摄影网站源码,广告牌样式图片大全,专题网站开发报价,网站建设详细教程视频提示#xff1a;文章写完后#xff0c;目录可以自动生成#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、js组成window对象定时器-延迟函数location对象navigator对象histroy对象 二 、本地存储#xff08;今日重点#xff09;localStorage#xff08;重点文章写完后目录可以自动生成如何生成可参考右边的帮助文档 文章目录 前言一、js组成window对象定时器-延迟函数location对象navigator对象histroy对象 二 、本地存储今日重点localStorage重点localStorage 存储复杂数据类型数组map 方法数组join方法 二、案例举例学生就业信息表 前言 BOM操作 综合案例 一、js组成 JavaScript的组成 ECMAScript: 规定了js基础语法核心知识。比如变量、分支语句、循环语句、对象等等 Web APIs : DOM 文档对象模型 定义了一套操作HTML文档的APIBOM 浏览器对象模型定义了一套操作浏览器窗口的API window对象 BOM (Browser Object Model ) 是浏览器对象模型 window对象是一个全局对象也可以说是JavaScript中的顶级对象像document、alert()、console.log()这些都是window的属性基本BOM的属性和方法都是window的所有通过var定义在全局作用域中的变量、函数都会变成window对象的属性和方法window对象下的属性和方法调用的时候可以省略window 定时器-延迟函数 JavaScript 内置的一个用来让代码延迟执行的函数叫 setTimeout 语法 setTimeout(回调函数, 延迟时间)setTimeout 仅仅只执行一次所以可以理解为就是把一段代码延迟执行, 平时省略window 间歇函数 setInterval : 每隔一段时间就执行一次 , 平时省略window 清除延时函数 clearTimeout(timerId)注意点 延时函数需要等待,所以后面的代码先执行返回值是一个正整数表示定时器的编号 bodyscript// 定时器之延迟函数// 1. 开启延迟函数let timerId setTimeout(function () {console.log(我只执行一次)}, 3000)// 1.1 延迟函数返回的还是一个正整数数字表示延迟函数的编号console.log(timerId)// 1.2 延迟函数需要等待时间所以下面的代码优先执行// 2. 关闭延迟函数clearTimeout(timerId)/script /bodylocation对象 location (地址) 它拆分并保存了 URL 地址的各个组成部分 它是一个对象 属性/方法说明href属性获取完整的 URL 地址赋值时用于地址的跳转search属性获取地址中携带的参数符号 后面部分hash属性获取地址中的啥希值符号 # 后面部分reload()方法用来刷新当前页面传入参数 true 时表示强制刷新 bodyforminput typetext namesearch button搜索/button/forma href#/music音乐/aa href#/download下载/abutton classreload刷新页面/buttonscript// location 对象 // 1. href属性 重点 得到完整地址赋值则是跳转到新地址console.log(location.href)// location.href http://www.itcast.cn// 2. search属性 得到 ? 后面的地址 console.log(location.search) // ?search笔记本// 3. hash属性 得到 # 后面的地址console.log(location.hash)// 4. reload 方法 刷新页面const btn document.querySelector(.reload)btn.addEventListener(click, function () {// location.reload() // 页面刷新location.reload(true) // 强制页面刷新 ctrlf5})/script /bodynavigator对象 navigator是对象该对象下记录了浏览器自身的相关信息 常用属性和方法 通过 userAgent 检测浏览器的版本及平台 // 检测 userAgent浏览器信息 (function () {const userAgent navigator.userAgent// 验证是否为Android或iPhoneconst android userAgent.match(/(Android);?[\s\/]([\d.])?/)const iphone userAgent.match(/(iPhone\sOS)\s([\d_])/)// 如果是Android或iPhone则跳转至移动站点if (android || iphone) {location.href http://m.itcast.cn}})();histroy对象 history (历史)是对象主要管理历史记录 该对象与浏览器地址栏的操作相对应如前进、后退等 使用场景 history对象一般在实际开发中比较少用但是会在一些OA 办公系统中见到。 常见方法 bodybutton classback←后退/buttonbutton classforward前进→/buttonscript// histroy对象// 1.前进const forward document.querySelector(.forward)forward.addEventListener(click, function () {// history.forward() history.go(1)})// 2.后退const back document.querySelector(.back)back.addEventListener(click, function () {// history.back()history.go(-1)})/script /body 二 、本地存储今日重点 本地存储将数据存储在本地浏览器中 好处 1、页面刷新或者关闭不丢失数据实现数据持久化 2、容量较大sessionStorage和 localStorage 约 5M 左右 localStorage重点 作用: 数据可以长期保留在本地浏览器中刷新页面和关闭页面数据也不会丢失 **特性**以键值对的形式存储并且存储的是字符串 省略了window 存储sessionStorage.setItem(key,value) 获取sessionStorage.getItem(key) 删除sessionStorage.removeItem(key) localStorage 存储复杂数据类型 存 问题本地只能存储字符串,无法存储复杂数据类型. 解决需要将复杂数据类型转换成 JSON字符串,在存储到本地 语法JSON.stringify(复杂数据类型) bodyscript// 本地存储复杂数据类型const goods {name: 小米,price: 1999}// localStorage.setItem(goods, goods)// console.log(localStorage.getItem(goods))// 1. 把对象转换为JSON字符串 JSON.stringifylocalStorage.setItem(goods, JSON.stringify(goods))// console.log(typeof localStorage.getItem(goods))/script /body取 问题因为本地存储里面取出来的是字符串不是对象无法直接使用 解决把取出来的字符串转换为对象 语法JSON.parse(JSON字符串) bodyscript// 本地存储复杂数据类型const goods {name: 小米,price: 1999}// localStorage.setItem(goods, goods)// console.log(localStorage.getItem(goods))// 1. 把对象转换为JSON字符串 JSON.stringifylocalStorage.setItem(goods, JSON.stringify(goods))// console.log(typeof localStorage.getItem(goods))// 2. 把JSON字符串转换为对象 JSON.parseconsole.log(JSON.parse(localStorage.getItem(goods)))/script /body数组map 方法 使用场景 map 可以遍历数组处理数据并且返回新的数组 语法 bodyscriptconst arr [red, blue, pink]// 1. 数组 map方法 处理数据并且 返回一个数组const newArr arr.map(function (ele, index) {// console.log(ele) // 数组元素// console.log(index) // 索引号return ele 颜色}) console.log(newArr) /script /bodymap 也称为映射。映射是个术语指两个元素的集之间元素相互“对应”的关系。 map重点在于有返回值forEach没有返回值undefined 数组join方法 作用:join() 方法用于把数组中的所有元素转换一个字符串 语法 bodyscriptconst arr [red, blue, pink]// 1. 数组 map方法 处理数据并且 返回一个数组const newArr arr.map(function (ele, index) {// console.log(ele) // 数组元素// console.log(index) // 索引号return ele 颜色})console.log(newArr)// 2. 数组join方法 把数组转换为字符串// 小括号为空则逗号分割console.log(newArr.join()) // red颜色,blue颜色,pink颜色// 小括号是空字符串则元素之间没有分隔符console.log(newArr.join()) //red颜色blue颜色pink颜色console.log(newArr.join(|)) //red颜色|blue颜色|pink颜色/script /body二、案例举例 学生就业信息表 map、join、localStorage script//1.获取元素const uname document.querySelector(.uname)const age document.querySelector(.age)const gender document.querySelector(.gender)const salary document.querySelector(.salary)const city document.querySelector(.city)const info document.querySelector(.info)const items document.querySelectorAll([name])let arr []//form提交事件数据更新渲染函数info.addEventListener(submit, function (e) {//阻止默认行为e.preventDefault()//判断内容是否为空for (let i 0; i items.length; i) {if (items[i].value ) { //return alert(输入不能为空)}}//数据替换const data {stuId: arr.length 1,uname: uname.value,age: age.value,gender: gender.value,salary: salary.value,city: city.value,}arr.push(data)localStorage.setItem(data, JSON.stringify(arr))//新数据渲染到下面表格render()//清空text填写原有数据this.reset()})function render() {let new_data arr.map(function (e, index) { //arr.map(function)(e,index){})return trtd${e.stuId}/tdtd${e.uname}/tdtd${e.age}/tdtd${e.gender}/tdtd${e.salary}/tdtd${e.city}/tdtda hrefjavascript: data-id${index}删除/a/td/tr })tbody.innerHTML new_data.join();}//del删除事件借助自定义属性const tbody document.querySelector(tbody)tbody.addEventListener(click, function (e) {if (e.target.tagName A) {arr.splice(e.target.dataset.id, 1) //arr render里面的new_data是添加在tbody里面localStorage.removeItem(data, JSON.stringify(arr[e.target.dataset.id]))render()localStorage.setItem(data, JSON.stringify(arr))}})/script
http://www.w-s-a.com/news/501778/

相关文章:

  • 网站设计的导航栏怎么做太原有网站工程公司吗
  • 苏州虎丘区建设局网站如何在一个数据库做两个网站
  • 淘宝天猫优惠券网站建设费用腾讯邮箱企业邮箱登录
  • 深圳福田做网站公司海航科技网站建设
  • 网站降权查询wordpress更换文章背景色
  • 大型电商网站开发金融企业网站建设公司
  • 成都营销型网站建设价格化妆品品牌推广方案
  • 深圳公司手机网站制作苏州网站推广哪家好
  • 网站建设开发方式包括购买学校网站建设费计入什么科目
  • 做简单网站的框架图中小微企业查询平台
  • 哪些网站可以免费做产品推广建设建设部网站
  • 网站开发销售怎么做django做网站
  • 淘宝客网站做百度竞价万网域名怎么绑定网站
  • 建设网站找哪个公司北京知名大公司有哪些
  • 专业彩票网站开发网站流量在哪设置
  • 网站建设对应的岗位榆林做网站公司
  • 网站建设公司怎么算专业js网站分页怎么做
  • 网和网站的区别phpcms和帝国cms哪个好
  • wordpress改网站名字长沙网络营销外包
  • 宝塔怎么做第二个网站网站内容设计遵循的原则有
  • 网站违反了 google 质量指南免费ppt模版网站
  • 郑州网站建设郑州网站建设成都那家网站建设好
  • 温州网站排名优化公司如何招聘软件网站开发人员
  • 成都 网站建设公司哪家好襄阳行业网站建设
  • wordpress 调用时间做网站seo的公司哪家好
  • 手机上网站搭建网站账户系统
  • 西乡网站的建设柳州建站
  • 宁夏网站建设怎么样互联网 网站设计
  • 成都关键词seo推广平台手机端关键词排名优化软件
  • 学做软件的网站卡盟平台