- 博客(19)
- 收藏
- 关注
原创 网页毛玻璃效果
需求描述: 系统菜单栏滑出覆盖界面左侧,要求菜单栏有毛玻璃效果。 例如下图MAC OS桌面效果,可模糊看见背景。 可行性调研: ccs3属性有属性可以高斯模糊 filter:blur(4px); 需要模糊菜单栏下方部分界面。 无法做到css属性跨标签且只应用一部分,因此需要截图菜单栏下层界面,放在菜单栏下层,并模糊该...
2019-02-22 17:19:15 2183
原创 html input type='file'和使用formData上传文件
1、使用input标签,属性设置type=‘file’用于选择本地文件,。<input type='file' accept='image/*' /> accept属性设置可选择文件的类型。选择一个文件后,控制台查看event.target.files[0].type属性即是该类文件可以设置的accept值。 图片使用'image/png'/'image/jpg'...
2018-08-30 12:02:37 4659 1
原创 使用h5 <a>标签 href='url' download 下载踩过的坑
用户点击下载多媒体文件(图片/视频等),最简单的方式:<a href='url' download="filename.ext">下载</a>如果url指向同源资源,是正常的。如果url指向第三方资源,download会失效,表现和不使用download时一致——浏览器能打开的文件,浏览器会直接打开,不能打开的文件,会直接下载。浏览器打开的文件,可以手动下载。...
2018-07-03 19:02:50 61553 3
原创 跨域POST访问第三方页面
遇到一个在新页面中打开第三方网站,但是只提供了POST请求的需求。首先要吐槽第三方网站只提供POST请求,简直****!1、接口测试 首先用postman测试接口,返回html文档,第三方接口用POST请求,默认对方返回的是静态页面,将结果写入新窗口即可;代码测试发现该html文档是第三方系统内部访问的页面,有很多该系统内部的请求。2、解决方案 表单可以用POST请...
2018-06-08 16:22:56 3012
原创 es6 generator函数
yiled 表达式的返回值function* foo() { yield new Promise((resolve, reject) => { resolve(); }); const result = yield console.log(0); result.then(() => { console.log(2); }); console.log(1);...
2018-05-24 10:46:30 118
原创 bitmap,位图法思路
bitmap适合做大量非重复整数的排序。当然,在现实中,大量非重复整数排序的场景很少。抽象来看,bitmap的思路是数据压缩。比如说,1-100不重复的整数,用int表示,java中每个int需要32位,总共需要3200位的空间,使用位图法,只需要100位,每个数字对应其中一位。真实数据变成了数组索引,bitmap存的是是否存在的标志位。 ...
2018-04-07 17:36:11 415
原创 localStorage/sessionStorage
html5提供了两种在客户端存储数据的新方法 localStorage: 无时间限制的数据存储 sessionStorage:针对一个session的数据存储 localStorage/sessionStorage用来替代cookie。因为cookie不能存储大量的数据,二期每个服务器请求都会传递,效率较低速度也慢。 cookie上限为4k,localStorage一般浏览...
2018-04-07 13:14:33 145
原创 javascript 闭包
闭包函数是可以调用父函数作用域的属性的函数。javascript的属性作用域是可继承的函数作用域,即子函数能访问父函数作用域和全局作用域,反之则不行。使用闭包可以打破这个限制。function f1(){ var n=999; nAdd=function(){n+=1} function f2(){ console.log(n); } ret...
2018-03-30 19:24:03 210
原创 简单排序算法
Javascript实现冒泡排序、选择排序、插入排序、快速排序function bobbleSort(arr) { for (let i = 0; i < arr.length; i++) { for (let j = 0; j < arr.length - i - 1; j++) { if (arr[j] > arr[j + 1]...
2018-03-30 17:07:26 188
原创 4399面试
2018.3.29,面试WEB前端工程师面试官提了以下问题: 1、HTTP状态码;301,302的区别 2、ajax 3、cookie/localstorage 4、闭包 5、算法、排序 6、nodejs 7、mysql/spring-mvc/mybatis 8、前端安全,注入,xss 9、前端缓存、性能优化 10、移动端iframe ...
2018-03-29 13:46:44 2020
原创 js DOM 元素操作
DOM节点(node)一般对应一个标签、一个文版或者一个HTML属性。DOM节点有一个nodeType属性用来表示当前元素的枚举类型,{1:Element,2:Attribute,3:Text}。1、创建DOM节点var node1 = document.createElement('div');var node2 = document.createTextNode('Hello...
2018-03-25 22:07:05 147
原创 angularJS 核心理念之 双向数据绑定
双向数据绑定是angularJS的核心理念之一。单向数据绑定:单向数据即是将用于生成界面的模板与从服务器取得的数据结合,生成用于显示的html标签。比如El表达式中常见 ${变量名}以及{{}} ,它只提供从数据源到视图的单方向的数据展示。 单向数据绑定的缺点是界面一旦生成,就不能更改,如果数据有更改,只能再来一遍,替换掉原来的html。再看双向数据绑定:双向数据绑定中,视图和数据是对应的,一方发...
2018-03-19 21:06:48 3195
原创 CSS知识碎片
1、常用display :none /*不显示,不占位*/ :inline /*行内*/ :block /*块*/ :flex /*弹性*/ :flow /*流式布局*/ :grid /*网格布局*/ 2、position::static //无定位 3种最常用的定位:relative //相对定位,相对...
2018-03-18 23:22:04 156
原创 漫说邀请抽奖机制
有奖品x,若干人n参与抽奖,邀请他人参与抽奖提升自己的中奖率。这是一个零和博弈。理性状态下,所有人都不邀请新人,中奖率固定。进一步分析,我是参与者之一,如果我邀请人,别人不邀请,我的中奖率会上升;如果别人邀请我不邀请,我的中奖率会下降;如果所有人都邀请,我的中奖率与我邀请者/总被邀请者有关,但一定大于别人邀请但我不邀请的情况,因此,邀请新人对我而言是最佳方案。于是我邀请新人。于是,其他...
2018-03-18 23:20:30 252
原创 ES6 函数默认值
1、ES6之前,函数如果需要默认值,需要在函数内额外处理,如:function log(x,y){ y = y || 'World' console.log(x,y);}log('Hello');//Hello Worldlog('Hello','ES6');//Hello ES6log('Hello','');//Hello World上述代码中第二行,检查y参数是否有值...
2018-03-15 14:22:43 708
原创 js instanceof、typeof、Object.prototype.toString.call(obj)的用法和区别
js里instanceof和typeof、Object.prototype.toString.call()方法都可以用来判断变量的类型。1、instanceof 官方文档说明:instanceof 运算符用来测试一个对象在其原型链中是否存在一个构造函数的 prototype 属性。 语法:object instanceof constructor instanceof 运算符用来...
2018-03-12 16:39:56 946
原创 Json对象深拷贝
1、浅拷贝 对于一个引用类型,如果直接将它赋值给另一个对象,只是将引用地址赋值给新对象,修改一个对象另一个也会被更改。 例:var user = { code:'0001', name:'张三'};var user2 = user;user2.name = '李四';console.log(user);console.log(user2); ...
2018-03-05 16:32:16 17811
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人