自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 web端上传静态资源至阿里云OSS

鉴于安全性,本文采用的是服务端签名后直传方式。本文分为两部分讲解:JavaScript客户端签名直传小程序签名直传服务端签名后直传 — 官方文档一、JavaScript客户端签名直传上传中使用了 plupload. 详见官方文档本文中的代码是经过删改过后的代码,若想看完整的具体代码,请点击:阿里官方客户端代码 下载// 代码中使用的Base64、Crypto、pluplo...

2020-01-14 16:32:25 1405 1

原创 同域名下iframe父子页面间的通信

iframe元素的获取方式:1. 获取iframe的window对象 iframe.contentWindow2. 获取iframe的document对象 iframe.contentDocument父页面调用子iframe页面<!--js方法-->1. 使用contentWindow属性document.getElementById('iframe...

2020-01-08 17:08:48 549

原创 不同域下的iframe实现父子窗口通信

如果父页面与子页面的协议、端口号、域名一致,则可以通过获取元素的方式进行通信,但某一个不一致时,则需要通过window.postMessage()方式进行通信父页面: <div> <iframe :src="xxx" id="parentPage"></iframe> </div> <script> // 获取子页面传...

2020-01-08 17:06:37 997

原创 实现元素在浏览器中全屏

如何实现全屏需要考虑2个问题:当前浏览器是否支持全屏想全屏的元素是否支持全屏一、 如何判断当前元素是否能够实现全屏function supportFullPage(element){ var requestFullscreen = element.requestFullscreen ||element.mozRequestFullScreen ||element.webkit...

2020-01-08 15:47:32 198

原创 js中replace作用以及用法

replace作用以及用法1. 作用:替换字符串中的内容2. 用法: str.replace(regexp|substr, newSubStr|function)3. 参数说明: - regexp(pattern): 一个RegExp对象或者其字面量。该正则所匹配的内容会被第二个参数的返回值替换掉 - substr(pattern): 字符串。若在str中包含substr则会被newS...

2019-10-12 18:51:29 3774

原创 过一遍ES6(五) --- 字符串的扩展

1. 字符的Unicode编码JavaScript允许采用\uxxxx形式表示一个字符,其中xxxx表示字符的Unicode码点。\uxxxx表示法只限于码点在\u0000(数字0) ~\uFFFF之间的字符。超出范围的字符,需要使用双字节的形式表示若超出,如 \u20BB7,JavaScript会理解成\u20BB+7。由于\u20BB是一个不可打印字符,所以只会显示一个空格,后面跟着...

2018-10-09 11:38:50 569

原创 过一遍ES6(四) --- 其他类型的解构赋值

本文主要内容: ① 字符串的解构赋值 ② 数值和布尔值的解构赋值 ③ 函数参数的解构赋值 ④ 解构赋值过程中圆括号的使用 ⑤解构赋值的用途 解构赋值的规则是,只要等号右边的值不是对象或者数组,就先将其转为对象。undefined和null无法转为对象,所以对它们进行解构赋值均会报错 1 字符串的解构赋值 通过解构赋值,字符...

2018-09-04 20:44:58 238

原创 过一遍ES6(三)--- 对象的解构赋值

解构:ES6按照一定的模式,从数组和对象中提取值,对变量进行赋值对象的结构赋值与数组结构赋值的不同之处:数组元素时按次序排列的,变量的取值由它的位置决定;对象的属性没有次序,变量必须与属性同名,才能取到正确的值。对象的结构赋值1 形式let { bar, foo } = { foo: "aaa", bar: "bbb" };foo // "aaa"bar // "bbb"le...

2018-09-03 20:30:54 357

原创 过一遍ES6(二)--- 数组的解构赋值

解构:ES6按照一定的模式,从数组和对象中提取值,对变量进行赋值数组的结构赋值形式: 从数组中提取值,按照对应的位置,对变量赋值let [a, b, c] = [1, 2, 3]嵌套数据进行结构 本质上,这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予对应的值。let [foo, [[bar], baz]] = [1, [[2], 3]];foo //...

2018-08-31 20:03:35 1184

原创 过一遍ES6知识点(一)

let 和 const 命令let 的使用let 用来声明变量,只在let命令所在的代码块中有效。【代码块:使用花括号包住的内容称为代码块{}】 利用let只在当前代码块中有效的特性 解决 for 循环中的问题: 总结: - var声明的变量在全局范围内都有效,全局变量只有一个i,所以每一次的循环,变量i的值度会发生改变。在数组a的函数内部的变量i指向...

2018-08-29 20:55:25 367

原创 在swiper插件中放置使用videojs插件的视频

由于要使用videojs插件,所以需要引入video.js和css文件(自己从网上找)swiper轮播图的布局可以根据自己的喜好来排布。当视频播放时停止轮播。播放完毕时开始轮播。html: &lt;div class="last-swiper-container" id="last_page"&gt; &lt;div class="swiper-wrapp...

2018-05-21 13:10:44 6236

原创 vue中如何写轮播图

步骤: 1. 安装vue-awesome-swipernpm install vue-awesome-swiper -S 2.在vue项目中引用vue-awesome-swipermain.jsimport VueAwesomeSwiper from 'vue-awesome-swiper'// require stylesimport 'swiper/dist/c...

2018-04-23 15:55:27 3338

原创 总结webpack4的使用

1、webpack4与webpack3的比较不需要在配置文件webpack.config.js中指定入口以及出口文件webpack3的webpack.config.js文件:const path = require('path')module.export = { output: { path: path.resolve(__dirname, './d...

2018-04-17 10:22:37 2463

原创 如何缩小柱状图 中 柱之间的距离

修改barCategoryGap的值。注意: barCategoryGap的距离是指柱与边界的距离

2018-04-16 20:16:33 16890

原创 Echart中的柱状图、折线图的纵坐标详解

用官网的例子来解释: option = { tooltip : { trigger: 'axis' }, legend: { data:['蒸发量','降水量','最低气温','最高气温'] }, toolbox: { show : true, feature : { ...

2018-04-11 16:58:33 10625

原创 手机端滚动页面到一定程度出现特效

手机端不支持监听滚动的距离(惯性滚动的距离),因此可使用下面的方式来实现:当滑动手机页面到一定程度时,实现某些特效。思路:定义一个变量记录所要滑动的最大距离利用setInterval(function(){},1)。解释为什么要使用setInterval()定时器。进行实时的比较:由于手机端的不支持监听惯性滚动距离,所以我们需要实时的获取scrollTop,从而将scrol...

2018-04-10 19:26:25 384

原创 swiper插件的使用

使用步骤引入swiper.min.js文件新建一个swiper对象var mySwiper = new Swiper('.swiper_c5', { autoplay: 1500})根据自己需求对对象进行编辑例如:淡入淡出效果var mySwiper = new Swiper('.swiper_c5', { effect: 'fade', ...

2018-04-10 13:17:17 481

转载 vue生命周期详解

原文链接&lt;!DOCTYPE html&gt;&lt;html lang="en"&gt;&lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;

2018-02-24 18:35:34 791

原创 js中的预解析问题

预解析 =&gt; 声明的提升 1. 以var 声明的变量 会预解析 2. 以let 声明的变量 不会进行预解析 3. 函数的声明会 预解析 4. 函数表达式 不进行预解析 例子: foo() function foo () { var a = 1 console.log(a) } function foo () { var a = 2 ...

2018-02-24 17:49:27 362

原创 日期格式化

c表示的是所要格式化的日期 let year = c.getFullYear() let mou = (c.getMonth() + 1) &lt; 10 ? '0' + (c.getMonth() + 1) : (c.getMonth() + 1) let day = c.getDate() &lt; 10 ? '0' + c.getDate() : c.getDate() ...

2018-02-22 13:16:29 157

原创 创建一个weex项目出现proxy的问题

于是乎我就乖乖的执行了npm help config,执行之后打开了一个网页,以下内容映入眼帘 我就在想难道是要用npm config set proxy?然后就尝试性的百度了下这个命令,结果搜到的是 在cmd窗口中执行了这两行命令,结果奇迹般的就能正常运行了,希望可以给同样遇到这个问题的伙伴一些参考,祝你们好运~

2018-01-23 21:25:17 583

原创 App和web的区别

App优点:流畅、稳定、基本上一些App都可以脱网运行、用户体验好缺点:不能跨平台Web - 优点:可以跨平台 - 缺点:没有App流畅、不稳定(受限于网速和网络)http状态码

2018-01-03 16:51:14 1321

原创 vue中vue-schart(图表组件)的使用

安装npm install vue-schart -S在vue组件中使用引入该组件import Schart from 'vue-schart'注册该组件compnents:{ Schart}在template标签中使用<schart :canvasId="canvasId" :type="type" :width="width"

2017-12-18 17:34:05 19368 5

原创 小程序中的生命周期onHide和onUnload

onHide:监听页面的隐藏当从当前A页跳转到其他页面,那么A页面处于隐藏状态。onUnload:监听页面的卸载当前处于A页面,点击返回按钮时,则将是A页面卸载、利用这两个生命周期可以解决的问题:防止用户快速切换页面(A->B)。导致动态设置导航栏中的文字显示出现错误 快速切换页面可能导致A页面中的数据还未返回,致使当切换到B页面的时候A数据才返回,使得导航栏显示的文字为A页面的导航栏标

2017-12-08 11:39:27 53440 1

原创 使用自定义事件的表单输入组件

使用自定义事件的表单输入组件自定义组件可以用来创建自定义的表单输入组件,使用v-model来进行数据双向绑定。 先上官网内容,然后做解释:<input v-model="something">相当于是以下示例的语法糖:<input v-bind:value="something" v-on:input="something = $event.target.value">在组件中使用

2017-11-22 15:10:40 393

原创 v-model修饰符.lazy详解

官网相关内容:在默认情况下,v-model 在 input 事件中同步输入框的值与数据 (除了 上述 IME 部分),但你可以添加一个修饰符 lazy ,从而转变为在 change 事件中同步:input v-model.lazy="msg" >个人实践理解:1. 当v-model没有使用.lazy修饰符时:代码:

2017-11-21 17:53:05 44147 7

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除