以最小1024尺寸为例: function rem() { var htmlEle = document.documentElement; var winWidth = htmlEle.clientWidth...htmlEle.style.height = htmlEle.clientHeight + 'px'; htmlEle.style.minWidth = 1024 + 'px'; }; rem...(); window.onresize = function() { rem(); }
a和fn,而在o2中没有改变,由于数组和函数都是对象,是引用类型, 这就说明o1中的属性和方法与o2中的属性与方法虽然同名但却不是一个引用,而是对Obj对象定义的属性和方法的一个复制。...person1中包含了name属性,同时自动生成一个__proto__属性,该属性指向Person的prototype,可以访问到prototype内定义的printName方法,大概就是这个样子的...同样道理如果在实例中定义如prototype同名的属性或函数,则会覆盖prototype的属性或函数。...Person('Byron'); person.share=0; console.log(person.share); //0而不是prototype中的...了解了这些知识就可以构建一个科学些的、复用率高的对象,如果希望实例对象的属性或函数则定义到prototype中, 如果希望每个实例单独拥有的属性或方法则定义到this中,可以通过构造函数传递实例化参数
前端开发中,移动端的开发可以说是举足轻重了,可是又面临着不同设备尺寸和分辨率的尴尬点。今天[2018-09-16]台风山竹登陆广东,来势汹汹,外出是不可能的了,那就宅着写写这篇小文章吧......=1.0, user-scalable=0"> 复制代码 嗯,这个知识点还是一丢丢的 本博文的重点不是这个~ 是的,我们可以使用REM来进行适配啊:可以说是目前最强的移动端适配方案... rem是什么...rem和em单位一样,都是一个相对单位,不同的是em是相对于父元素的font-size进行计算,rem是相对于根元素html的font-size进行计算的,这样一来rem就完美的绕开了复杂的层级关系,实现了类似...默认情况下,浏览器给的字体大小是16px,按照转化关系16px = 1rem。 咦,都是固定了根元素是默认16px了,如何设备不同的移动设备呢?...见下: rem自适应处理方案 使用rem布局的时候,为了兼容不同的分辨率,我们应该要动态的修正根字体的大小,让所有的用rem单位的子元素跟着一起缩放,从而达到自适应的效果。
js中for语句的介绍 1、for语句也是先测试语句,只不过增加了进入循环之前的初始化代码.... xhs++ } 无法通过 while 循环实现的逻辑,同样也无法使用 for 循环实现。...因此 for 循环只是将循环相关的代码封装在了一起而已。 2、在for循环的初始化代码中,其实是可以不使用变量声明关键字的。 不过,初始化定义的迭代器变 量在循环执行完成后几乎不可能再用到了。...因此,最清晰的写法是使用 let 声明迭代器变量,这样就可以将这个变量的作用域限定在循环中。 初始化、条件表达式和循环后表达式都不是必需的。...以上就是js中for语句的介绍,希望对大家有所帮助。
前言 移动端布局中,童鞋们会使用到rem作为css单位进行不同手机屏幕大小上的适配。那么来讲讲rem在其中起的作用和如何动态设置rem的值。...1、什么是rem rem是相对于根元素(html标签)的字体大小的单位。 2、rem实现适配的原理 核心思想:百分比布局可实现响应式布局,而rem相当于百分比布局。 ...实现手段:动态获取当前视口宽度width,除以一个固定的数n,得到rem的值。表达式为rem = width / n。 通过此方法,rem大小始终为width的n等分。...device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> 5、使用体验: 我在项目中没有使用flexible.js...等此类动态计算rem的插件。
px特点 IE无法调整那些使用px作为单位的字体大小; 国外的大部分网站能够调整的原因在于其使用了em或rem作为字体单位; Firefox能够调整px和em,rem,但是有大部分的国产浏览器使用IE内核...为了简化font-size的换算,需要在css中的body选择器中声明Font-size=62.5%,这就使em值变为 16px * 62.5%=10px, 这样12px=1.2em, 10px=1em...所以我们在写CSS的时候,需要注意两点: body选择器中声明Font-size=62.5%; 将你的原来的px数值除以10,然后换上em作为单位; 重新计算那些被放大的字体的em数值。...比如:在 #content 中声明了字体大小为1.2em,那么在声明 p 标签的字体大小时就只能是1em,而不是1.2em, 因为此em非彼em,它因继承 #content 的字体高而变为了1em=12px...REM rem 相对于根元素 ,这样就意味着,我们只需要在根元素确定一个参考值。 rem是CSS3新增的一个相对单位(root em,根em),这个单位引起了广泛关注。
(我现在知道的尚浅)目前我了解有 1.百分比法: 顾名思义,页面的元素的margin,padding,width,height,等等都用%来计算,CSS中的百分比中的百指的是什么,指的是父元素,所有百分比都是这样的...2.媒体查询: 这个是css3中给出的,我们要解决的问题是适应手机屏幕,这个媒体查询正是为解决这个问题而生,媒体查询的功能就是为不同的媒体设置不同的css样 式,这里的“媒体”包括页面尺寸,设备屏幕尺寸等...(你还可以设置更多节点) 用媒体查询的话要保证每个像素下都有对应的适配效果显然你要设置更小的宽度范围; 3.还有就是css3的单位rem: rem就是将根节点html的font-size的值作为整个页面的基准尺寸...那就要用到js在页面加载时获取window的宽度(浏览器窗口的宽度)$(window).width();在开发手机页面的时候,一般我们设置最大宽度为640px,因为640px可以保证在至今最宽的手机上显示时网页两端刚好贴合屏幕...; //我这里设置html的font-size:20px;最大 宽为640px,即相当于640/20=32rem;一行有3个div, 所以每个div宽10.6rem 你也可以像论坛里面讲的那样设置
js中co模块的介绍 1、co模块可以帮助我们完成异步流程的自动执行。基于Promise对象的co模块。co模块的源代码也很简单,更适合阅读。....catch((err) => console.error(err.stack)); 以上就是js中co模块的介绍,希望对大家有所帮助。更多js学习指路:js教程 收藏 | 0点赞 | 0打赏
js中UMD规范的介绍 说明 1、UMD是AMD和CommonJS的结合。 CommonJS模块是根据服务器第一原则开发的。选择同步加载,其模块不需要包装。...通用模块定义,umd兼容commonjs和amd规范,这意味着umd规范的模块可以直接引用到commonjs规范的项目和amd规范的项目中。...2、UMD判断是否存在支持Node.js的模块(exports),然后使用Node.js模块模式。在判断是否支持AMD(define是否存在)时,使用AMD加载模块。...中UMD规范的介绍,希望对大家有所帮助。...更多js学习指路:js教程 推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。 收藏 | 0点赞 | 0打赏
rem在响应式布局中的应用 最近做了一些响应式的页面,遇到了一些问题,想了些解决方法,在这里总结一下。目前响应式的主流实现方式是百分比布局,加上媒体查询@media screen。...关于媒体查询还有媒体查询的一些兼容性问题,网上介绍的很多 其实响应式布局中主要困扰我们的问题还是元素的等比缩放。目前的元素的等比缩放主要有以下两种解决方案。 实现等比缩放的一些方案 1....1. rem是的啥 rem是css中的尺寸单位,rem是以根元素html的font-size的大小为基准的,例如2rem就是跟元素font-size两倍的大小,一般浏览器默认是16px。...rem不能用在font的简写中和伪元素(:before:after)中,这两点基本上不会影响使用。...同样实现video的等比缩放,使用rem的方式,只需要引用上面的js代码,然后就可以如下实现了: video{ width: .4rem; height: .4rem;
320.css当屏幕尺寸大于640px的时候引入的是640css rem适配方案 一、 css预处理语言 媒体查询 rem 二、 flexible.js rem 动态设置html标签font-size的大小...(这里的标准是指以哪个尺寸的设计稿算出来的font-size值) rem配合 flexible.js 使用第一种方式有点麻烦 如下代码 很多媒体查询 /* 设置常见屏幕尺寸,修改html文字大小*/ /...10rem / @baseFont } } 每次设计到高宽都要除下font-size 解决办法是通过flexible.js github 它是手机淘宝团队出的简洁高效移动端适配库 我们不需要在写不同屏幕的媒体查询...,因为js做了相关处理 它的原理是把当前设备划分为10等份,但是在不同设备下比例一致 我们要做的就是确定好我们当前设备的html文字大小就可以了 比如当前设计稿750px,那么我们只需要把html文字大小设置为...75px(750px/10)就可以 里面页面元素rem值:页面元素的px值 / 75 剩下的交给flexible.js 如下 html{ font-size: 20px!
传统的样式适配是利用CSS 的媒体查询,但是这种方式要为每一种规格尺寸的屏幕写一套代码适配,比较繁琐。 这种情况下,利用rem来实现移动端的适配会更为方便一点。...在W3C中,对rem的定义是相对于根元素字体的大小,即根元素的字体大小是10px,那2rem的实际尺寸就是20px。...在Webpack中我们可以利用px2rem-loader这个插件在打包时,自动的将px转换为rem,非常方便。 1. 安装插件 npm i px2rem-loader -D 2....的插件 { loader: 'px2rem-loader', options...// px转成rem后小数点的位数 remPrecision: 8 }
简言 em 和 rem这种相对长度单位进行页面排版是web开发中的最好的选择。在页面排版中较好应用em 和 rem,根据设备尺寸缩放显示元素的大小。...本文将会给大家介绍究竟什么是 em 和 rem 和如何进行两者的选择,以及结合两者优势构建模块化的web组件。 什么是em em 是相对长度单位。它相对于当前元素字体尺寸,即font-size。...WEB开发中的最好的选择。...什么是rem rem表示 root em,它是相对于根元素的长度单位。这里根元素就是中定义的字体大小。这意味着任何地方的1rem总是等于中定义的字体大小。...那么在具体的应用中如何在两者中做选择呢?有两条简单的指导原则: 如果属性尺寸要根据元素字体进行缩放,则使用em 其它情况下都使用rem 上述规则太简单了。
js数组中find方法的介绍 1、find返回数组中满足条件的第一个元素的值,否则返回undefined。...2、find方法对数组中的每个元素执行callback函数,并返回true的第一个元素值。 3、find不会改变原数组。 实例 Array.prototype....+){ if(callback(this[i],i,this)){ res = this[i] break; } } return res } 以上就是js...数组中find方法的介绍,希望对大家有所帮助。
js中构造器属性的介绍 1、在对象中,可以设置一些奇怪的属性_num,称之为构造器属性。一般来说,这种属性不想直接通过外部访问(obj._num)。...我们希望控制这个属性的访问逻辑,obj.num可以访问它,然后改变它的逻辑。 2、构造器属性可以重写自定义属性的get和set方法。...//重写自定义属性的set和get属性 set(num){ thsi...._num }//在num的值被获取时,调用 }) console.log(obj.num); obj.num=5; console.log(obj.num); 以上就是js中构造器属性的介绍,希望对大家有所帮助...更多js学习指路:js教程 推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。
1.创建 rem.js 文件 很多人写这种小工具文件会习惯性的加上闭包,这个其实是没有必要的。ES6 中每个文件都是单独的一个模块。.../***1、创建rem.js文件 **很多人写这种小工具文件会习惯性的加上闭包,这个其实是没有必要的。ES6中每个文件都是单独的一个模块。...window.onresize = function () { setRem(); }; 2.在main.js中引入rem.js rem.js 的路径是自己定的,在哪就写那个路径。...install postcss-pxtorem -D 2.配置文件 1>vue-cli2.x 中修改根目录 postcssrc.js 文件 在根目录找到找到postcssrc.js文件,并在其中找到...暂不支持`style`中使用`@import url();*` \\ 4.vue 中 px 动转化为 rem 插件 1>三种常用的插件对比 postcss-plugin-px2rem 官方文档:https
所以,main.js就成功地引用了hello.js模块中定义的greet()函数,接下来就可以直接使用它了。 在使用require()引入模块的时候,请注意模块的相对路径。...如果你在a.js中使用了全局变量s,那么,在b.js中也使用全局变量s,将造成冲突,b.js中对s赋值会改变a.js的运行逻辑。...; // hello.js代码结束 })(); 这样一来,原来的全局变量s现在变成了匿名函数内部的局部变量。如果Node.js继续加载其他模块,这些模块中定义的“全局”变量s也互不干扰。.../hello'); 以上是Node实现JavaScript模块的一个简单的原理介绍。...: 首先,Node会把整个待加载的hello.js文件放入一个包装函数load中执行。
当你在项目中采用rem做响应式页面的时候,如果代码里面写的是rem单位的话,会不好判断各种距离、宽高的具体数值,下面介绍一款插件:px2rem,使用此插件可以在代码里依然写px,启动项目会自动将...),在util文件夹下新建rem.js文件,内容如下: // rem等比适配配置文件 // 基准大小 const baseSize = 16 // 设置 rem 函数 function setRem...window.onresize = function() { setRem() } 第三步 在项目main.js中引入此文件import '..../util/rem' 第四步 在项目根目录新建vue.config.js文件(如已有请忽略),并在其中添加如下代码 // 引入等比适配插件 const px2rem = require('postcss-px2rem...') // 配置基本大小 const postcss = px2rem({ // 基准大小 baseSize,需要和rem.js中相同 remUnit: 16 }) // 使用等比适配插件
JavaScript JavaScript(简称js)是一种主要运行于浏览器中的弱类型的动态脚本语言,可以用来实现网页上的一些高级功能,如数据验证处理、页面动态效果、定时任务、与用户交互、发送/接收服务器端数据等等...动态语言指的是程序运行时可以改变结构,主要体现在: ① js中的变量在声明的时候不需要指定类型,其实际类型由程序运行中的赋值决定,在运行过程中变量的类型也可以改变。...③ 对象的成员可变,可以动态添加、删除成员属性或成员方法。 弱类型指的是js中的变量在参与运算的时候可以根据实际需要动态转换类型。...例如遵循CommonJS标准的模块定义,适合服务器需求的多线程、集群、HTTP/HTTPS,文件系统,等等。Node.js中的很多方法都同时提供了异步版本与同步版本,从函数的命名上可以简单区分。...JSON从js中脱胎而出,作为一种简洁、扩展性好的轻量级数据表示方法,在很多领域得到了广泛使用。 Node.js在服务器端与开发流程中都越来越得到重视。
一、NPM介绍 NPM 是Node.js的包管理工具。它的重要性就像 gem 之于 Ruby 一样。Node.js 与 NPM的关系是密不可分的。 1....NPM 常用命令 NPM 默认是与Node.js 一起安装的,可以在命令行中输入npm ,验证是否安装,如图所示: ? 可以通过npm -v 或 npm version 命令查看NPM的安装版本。...安装第三方包的的时候可以在命令后添加-save 或者 -S,这样所安装的包的信息会记录在package.json文件的dependencies字段中,如图: npm install underscore...这样安装的包的信息将会记录在package.json文件的devDependencies字段中,如图: npm install underscore -save-dev ?...4. package.json文件 package.json文件 是提供包描述的文件。在Node.js中,一个包是一个文件夹,其中的package.json文件以 json 格式存储该包的相关描述。
领取专属 10元无门槛券
手把手带您无忧上云