首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
JavaScript基础知识
5大大大大雄
创建于2022-01-16
订阅专栏
JavaScript 知识体系整理
等 3 人订阅
共34篇文章
创建于2022-01-16
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
pc和mobile切换方式
pc端和移动端切换的主要方式:通过css媒体查询和弹性布局(弹性盒子布局、网格布局) ,常规使用rem、vh、vm、百分比等处理 ,基于URL进行切换 ,网页加载时检查user-agent
express动态设置路由和视图
对于express的服务端渲染,部分页面的后台服务业务逻辑是一样的,但是页面展示视图不一样,针对这种情况。如何从路由、视图动态选择等不同的方式来分别处理这种情况,本文就列举相关方式具体说明
监听dom变化
Mutation Observer API 用来监视 DOM 变动。DOM 的任何变动,比如节点的增减、属性的变动、文本内容的变动,这个 API 都可以得到通知
常见文件下载方式
使用a标签的自带属性download,大部份文件都可以下载。其他下载方式可以在a标签的基础上,通过提供url提供更加灵活可控的下载方式
网页可见性
要统计游戏在线时长,当数据量大的时候可以忽略一些特殊情况的数据(浏览器最小化、页面菜单切换、锁屏等)。但是在数据量少的情况下,需要把这些特殊情况排除掉,避免数据收到干扰。针对这种情况,采用网页可见性
next的Link组件
是一个 React 组件,它扩展了 HTML`<a>`元素以提供路由之间的[预加载]和客户端导航,通俗理解就是使用该组件可以提前加载下一个页面的资源
大数据列表优化
1、分页加载 传统大数据列表处理方式,通过分页调用一部分数据,减少大量数据渲染 2、懒加载(滚动加载) 原理:通过监听滚动事件和回调函数的机制,配合使用元素相关属性和方法scrollTop、getCl
前端数据上报
常见上报方案 1、基于脚本请求 可以使用常规的ajax请求、fetch请求,通过请求后端接口,可以记录当前页面访问记录 优点: 可以快速上报数据, 结合埋点记录用户的行为,包括点击、滑动、页面停留时间
懒加载
常规懒加载 使用图片资源懒加载作为例子,一般都是在页面中进行资源监测,进入页面触发一次懒加载,滚动时候再绑定事件触发懒加载,这样页面就一开始进行了两次处理。如果页面有横向滚动的元素,就需要再绑定
Cache API
Cache 浏览器的缓存主要有memoryCache、diskCache、ServiceWorker cache,本文主要以ServiceWorker 的cache为主,使用缓存存储当前面中所有资源
解决网页中脚本加载失败方案
当脚本在网页加载过程中未能成功加载时,通常会发生错误。这些错误可能是由各种因素引起的,例如网络连接问题、服务器故障、vpn代理等, 大部份可以重复再加载一次,或者使用不同节点的脚本作为备用源加载
yarn安装插件导致yarn.lock出现相对路径报错
yarn.lock 文件发现resolved上的路径使用的是相对路径,因此安装的时候,找不到对应插件而报错,需要删除yarn.lock对应错误的数据,重新通过yarn 指令去更新对应的包就可以
页面访问文件及文件夹
File System Access API使得JavaScript可以读写用户选择的本地文件,提供了更好的用户体验和更多的功能,注意这些API需要在安全上下文中运行(https与localhost)
相邻兄弟层元素如何实现点击穿透
两个相邻兄弟层级ui层,实现穿透点击。在页面上弹出弹幕,有些用户的操作点是在弹幕下,需要穿透弹幕实现点击操作,本文就这个问题列举些部分解决方法
innerHTML插入<script>脚本标签运行失败
使用innerHTML中插入<script>,直接把谷歌脚本引入(之前这么做目的是为了减少把谷歌脚本拆得分散),导致浏览器没有运行执行脚本
录屏功能
视频这块,用一些手机录制或者一些软件录制,感觉不太方便。用js 快速实现录制视频,而且只需要几行代码就可以实现
web推送消息
浏览器上的web页面需要像移动端app一样,可以发送通知告知用户,主要的目的是为了加深与用户的粘性,提高用户的互动。实现这这个功能主要是需要pwa的技术Notification和web push
vuePress继承使用
介绍 vuePress是一个极简静态网站生成器,它包含由vue驱动的主题系统和插件。它有个主题系统,可以设置自定义主题和默认主题,通过服务端渲染,生成对应的HTML文件,只需要设置好需要展示的md文件
worker.postMessage中的transfer参数
transfer可转移对象是如ArrayBuffer,MessagePort或ImageBitmap等二进制数据。JavaScript 允许主线程把二进制数据直接转移给子线程,一旦转移主线程就不在数据
web worker
js 都是单线程的,一旦有大量的js在运行的时候,界面上的ui渲染就会出现卡顿现象。web worker 可以让js 变得有多线程的特点, 可以用来执行大量与页面无关的js,而不影响界面的渲染
下一页