浏览器兼容性问题总结 1、HTML对象获取问题其他浏览器:document.getElementById("idName");IE浏览器:document.idnamedocument.getElementById("idName");解决办法:document.getElementById("idName");2. const定义常量问题其他浏览器:document.getElementById("idName");IE浏览器:document.idnamedoc..
Nginx 学习 一、官网源码:nginx – nginx官网:nginx news二、介绍Nginx是俄罗斯人Igor Sysoev编写的轻量级Web服务器,它的发音为[ˈendʒɪnks],它不仅是一个自由的、开源的、高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器。Nginx以事件驱动的方式编写,所以有非常好的性能,同时也是一个非常高效的反向代理、负载平衡服务器。在性能上,Nginx占用很少的系统资源,能支持更多的并发连接,达到更高的访问效率;在功能上,Ng..
Node进程管理工具—pm2 一、官网PM2二、简介PM2是一个内建了负载均衡器的node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单。当你要把你的独立代码利用全部的服务器上的所有 CPU,并保证进程永远都活着,0 秒的重载, PM2 是完美的。三、为什么需要pm2?目前Nodejs开发中有很多痛点,因为node本身是一个单线程应用,它的特点就是所有方法都是串行一次执行,并且node并没有能力像Java一样独自去创建一个新的线程来实现异步操作,如果在
远程服务连接工具—FinallShell 一、官网FinallShell二、介绍FinallShell是一款国人开发的一款非常好用的远程服务连接软件,轻松实现连接远程服务器和远程桌面工具,能够对远程的计算机进行连接控制操作,随时随地轻松操作电脑设备,让你远程办公更高效便捷。它不需要在远程的服务器所在地连接服务器,支持Windows系统、Mac系统、linux系统等多种系统平台的电脑连接,兼容性广泛,便于远程服务连接,除了远程连接功能外,软件还为用户带来内存和CPU使用率实时显示功能,实时掌握电脑性能情况。三、主要特性1.多平台
Leaflet-学习 一、官网英文官网:Leaflet中文官网:Leaflet二、介绍Leaflet 是一个开源并且对移动端友好的交互式地图 JavaScript 库。 它大小仅仅只有39 KB, 并且拥有绝大部分开发者所需要的所有地图特性。Leaflet 简单、高效并且易用。 它可以高效的运行在桌面和移动平台, 拥有着大量的扩展插件、优秀的文档、简单易用的API和完善的案例, 以及可读性较好的源码。三、下载Leaflet【1】CDN// html头部引入<link rel="s...
JavaScript实现类似sleep()的多种方式 编写复杂的JavaScript脚本时,有时会有需求希望脚本能停滞指定的一段时间,类似于 java 中的 Thread.sleep 或者 sh 脚本中的 sleep 命令所实现的效果。很多语言都有sleep函数,sleep() 方法的作用是在指定的毫秒数内让当前“正在执行的线程”休眠(暂停执行)但是JavaScript中并没有提供类似于 Java 的线程控制的功能, 虽然有 setTimeout 和 setInterval 两个方法可以做一些定时执行控制,但并不能满足所有的要求。因为setTimeou
jQuery使用Deferred对象执行异步操作 在JQuery 1.5之前,Ajax仅支持一个回调函数,但在JQuery的1.5版本中,引入了Deferred对象,它和ES6的Promise对象长的有点像,jQuery的Deferred对象也有resolve、reject、then方法,还有done、fail、always......方法。jQuery就是用这个Deferred对象来注册异步操作的回调函数,修改并传递异步操作的状态。它允许注册多个回调函数,并且能传递任何同步或异步函数的执行状态:成功或失败。简单说,Deferred对象就是jQuery..
Vue — transition实现过渡动画 前言Vue提供了transition的封装组件,任何元素和组件在下列四种情形中,都可以添加进入或离开过渡动画条件渲染(使用v-if) 条件展示(使用v-show) 动态组件 组件根节点一、transition用法<transition>元素作为单个元素/组件的过渡效果。<transition>只会把过渡效果应用到其包裹的内容上,而不会额外渲染DOM元素,也不会出现在可被检查的组件层级中。当插入或删除包含在 <transition&g...
前端高频面试题 前言多小伙伴为了面试会去看一些大厂的经典面试题,这里的“看”只是说加深一下以往的印象,也就是说你之前是用到过或者是学过,只是长时间用不到有点淡忘了。千万不要为了面试而死记硬背,这是程序员最大的悲哀,请记住一句话:“未经你思考的知识是不属于你的”楼主2018年毕业,三年前端开发经验。前段时间花了半个月时间面试,收到七八个offer,其中包括美的集团。以下是我对前端开发一些碎片化知识的总结,所谓碎片化,其实都是积木化,每一块积木都可以单独学习,自主拼接,进而组合成自己想要的形状,充分运用。..
CSS伪类实现中间文字两边横线效果 一、通过display:table实现html<div class="line">中间文字</div>css .line { display: table; width: 100%; white-space: nowrap; border-spacing: .2rem 0; color: #ccc; } .line:before, .line:after { d
canvas学习二 一、绘制文字【1】font字体属性canvas里的font属性和css的font属性是一样的,它可以设置文本的粗细、字号、字体等css设置字体:p{font:bold15px 微软雅黑;} canvas设置字体:ctx.font='bold15px微软雅黑'【2】textAlign水平对齐textAlign设置或返回文本内容的当前对齐方式start: 默认,文本在指定的位置开始 end: 文本在指定的位置结束 center: 文本的...
canvas学习一 一、什么是canvas?canvas是 HTML5 的标签元素,使用 JavaScript 在canvas里绘制图像。canvas画布是一个矩形区域,你可以控制其每一像素。canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。二、为什么需要学canvas?我们可以使用canvas 绘制复杂图形,处理图像,开发游戏,做动画,处理视频…div+csscanvas三、创建 canvas 元素通过 width 和 height 设置 canvas 画布的宽高,默认.
JS的 execCommand 方法实现一个简单的富文本编辑器 一、document.execCommand()从其名字上可以看出execCommand()是用来执行命令的,当一个HTML文档切换到设计模式时,document暴露execCommand方法,该方法允许运行命令来操纵可编辑内容区域的元素。如保存文件、打开新文件、撤消、重做、剪切、复制、删除,字体大小、背景颜色等操作,有了这个方法就可以很容易的实现网页中的文本编辑器【1】语法let bool = document.execCommand(aCommandName, aShowDefa...
TypeScript 面向对象编程 一、类面向对象编程中一个重要的核心就是:类,当我们使用面向对象的方式进行编程的时候,通常会首先去分析具体要实现的功能,把特性相似的抽象成一个一个的类,然后通过这些类实例化出来的具体对象来完成具体业务需求。【1】类的基础在类的基础中,包含下面几个核心的知识点,也是TypeScript与EMCAScript2015+在类方面共有的一些特性class关键字 构造函数:constructor 成员属性定义 成员方法 this关键字除了以上的共同特性以外,在TypeScript中...
单张图片上传组件 一、input实现文件上传【1】type属性type='file'表示文件域,用于文件上传【2】accept属性input框的accept属性值,它规定能够通过文件上传进行提交的文件类型 eg: accept="image/gif, image/jpeg"【3】实例<input type="file" name="file" accept="image/png,image/jpg,image/gif,image/JPEG" />// 上面代码意思是:input...
TypeScript函数详解 一、函数的标注一个函数的标注包含参数 返回值function fn(a: string): string {};let fn: (a: string) => string = function(a) {};type callback = (a: string): string;interface ICallBack { (a: string): string;}let fn: callback = function(a) {};let fn: ICallBack =
TypeScript高级类型 一、联合类型联合类型也可以称为多选类型,当我们希望标注一个变量为多个类型之一时可以选择联合类型标注,或的关系function css(ele: Element, attr: string, value: string|number) { // ...}let box = document.querySelector('.box');// document.querySelector 方法返回值就是一个联合类型 string|numberif (box) { // ts .
了解类型系统和TypeScript基础类型 一、什么是程序?程序 = 数据结构 + 算法 = 各种格式的数据 + 处理数据的逻辑二、数据是有格式(类型)的字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined) 对象(Object)、数组(Array)、函数(Function)、集合三、程序是可能有错误的计算错误(对非数字类型数据进行一些数学运算) 调用一个不存在的方法,不同类型的数据有不同的操作方式或方法,如:字符串类型的数据就不应该直接参与数学运算四、动态类型语言
TypeScript 初体验 - 环境搭建与编译执行 一、TypeScript官网https://www.tslang.cn/二、环境搭建TypeScript编写的程序并不能直接通过浏览器运行,我们需要先通过TypeScript编译器把TypeScript代码编译成JavaScript代码,TypeScript的编译器是基于Node.js的,所以我们需要先安装Node.js三、安装Node.jsNode官网:https://nodejs.org安装完成以后,可以通过终端或者cmd等命令行工具来调用no...
Vue中实现Input框按Enter键增加一行并聚焦 很多公司官网的登陆页面都有这样的需求,当用户输入完用户名之后,按键盘的Enter键就可以切换到下一行的密码输入框,并将光标聚焦到密码框这一行,聚焦这个功能主要通过触发input框的focus事件来实现一、密码框聚焦(确定ref值)我们给密码框增加ref属性为passwordInput,监听用户名输入框的Enter事件,增加下列代码,即可聚焦到密码框this.$refs.passwordInput.focus(); 二、使用v-for为每一个Input动态添加ref现在我们的需求变了,不