随笔分类 -  JavaScript

摘要:一、前言 我们h5项目终端适配采用的是淘宝那套《Flexible实现手淘H5页面的终端适配》方案。主要原理是rem布局。最近和别人谈弹性布局原理,发现虽然已经使用了那套方案很久,但是自己对rem的理解很含糊, 包括vw、vh等。所以打算写博客总结一下,以加深理解。 二、几个概念 这里就不讲那些,物理 阅读全文
posted @ 2018-05-19 11:01 leaf+ 阅读(15288) 评论(1) 推荐(2)
摘要:一、前言 去年12月份开启了一个新项目--在线抓娃娃,就是让用户可以通过app去控制我们机房中的娃娃机来抓取娃娃。本项目开发半个月就紧急上线第一版本,中间经过2次大版本迭代,一个月不到就做到用户量超过10w+,后面也算做到了市场中的前三。这个项目也算是某个点间的红利,当我们决定做这个之前,市面上只有 阅读全文
posted @ 2018-05-02 15:27 leaf+ 阅读(300) 评论(0) 推荐(0)
摘要:效果: 截图有点模糊~ 实现: 《svg教程》 三、原形进度条 阅读全文
posted @ 2018-03-26 12:14 leaf+ 阅读(2647) 评论(0) 推荐(0)
摘要:长按微信中打开的h5页面默认会有弹框,如图: 如果我们不想出现这个,可以加: oncontextmenu 事件在元素中用户右击鼠标时触发并打开上下文菜单。 阅读全文
posted @ 2018-03-03 17:32 leaf+ 阅读(1667) 评论(0) 推荐(0)
摘要:前段时间做了功能模块:用户设置自定义勋章; 实现方式:前端把用户设置的昵称传到后台,后台根据不同用户等级,使用离线合成技术合成不同的勋章返回到前端; 方案算是实现了,但是有点坑就是,后台的离线合成没有每次百分之百成功,且生成的图片模糊,现在暂不说这个; 在实现上述功能模块的时候联想到之前有用canv 阅读全文
posted @ 2018-03-03 17:11 leaf+ 阅读(346) 评论(0) 推荐(0)
摘要:[...new Set([1,2,3,1,'a',1,'a'])] [1, 2, 3, "a"] 这是ES6中新增了Set数据结构,类似于数组,但是 它的成员都是唯一的 ,其构造函数可以接受一个数组作为参数 再回顾一下一般常规的数组去重: 使用filter函数; 阅读全文
posted @ 2018-03-01 18:51 leaf+ 阅读(3116) 评论(0) 推荐(0)
摘要:一、前言 今天浏览某网站看到一个活动页有内嵌的弹幕模块(图一),但是看到移动的弹幕重叠很多,不忍直视啊。突然想起很久之前自己写写过类似的弹幕,就翻出来看了一下,呵,也是不忍直视的,最后再附上当年的效果以及代码; 二、大话几点 1、弹幕应用场景,视频中,直播中,微信墙等; 2、弹幕增加了大家的互动性, 阅读全文
posted @ 2018-02-07 16:59 leaf+ 阅读(4904) 评论(0) 推荐(0)
摘要:一、效果如图 二、实现 修改单选样式 阅读全文
posted @ 2018-02-03 11:23 leaf+ 阅读(4133) 评论(0) 推荐(0)
摘要:一、目标 把本地的文件移动到待发布的文件中,把static_grab文件中file.txt所列文件列表移动到beta对应文件夹中; 二、实现 阅读全文
posted @ 2018-02-03 10:49 leaf+ 阅读(575) 评论(0) 推荐(0)
摘要:设置属性: ios和安卓都是可以的。 在安卓的qq中还是全屏显示,可以采用canvas的方法。 阅读全文
posted @ 2017-11-27 18:32 leaf+ 阅读(1877) 评论(0) 推荐(0)
摘要:一、repalce定义 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。 二、有$1,$2...的例子 三,第二个参数是函数 四、一个栗子,实现模板字符替换 实现: 说明: 1、.*? 非贪婪匹配模式 2、每个匹配的这则组合执行一次函数 五、其他常用正则替换 六、其他 正则 阅读全文
posted @ 2017-11-13 10:49 leaf+ 阅读(15746) 评论(0) 推荐(1)
摘要:一 ckplayer官网下载。 直接解压到本地,注意配置里面的默认文件路径,最好是放在服务器的根目录下,这样就可以去访问外链接的资源,官网也是这么推荐的,我这里就直接用node开启一个小服务器。 二 下载插件http://bbs.ckplayer.com/forum.php?mod=viewthre 阅读全文
posted @ 2017-09-23 17:57 leaf+ 阅读(19042) 评论(0) 推荐(0)
摘要:后台下发的时间格式如:2016-09-15 15:30:10;也没多想,直接用new Date('2016-09-15 15:30:10').getTime()获取时间戳;开发时候,电脑调试OK,当放到触屏调试的时候,AndroidOK,但是ios也不行了,结果是:NaN-NaN1-NaN Inva 阅读全文
posted @ 2017-09-15 16:58 leaf+ 阅读(906) 评论(0) 推荐(0)
摘要:如果还有特定的需求,可以增加判断。 阅读全文
posted @ 2017-08-16 11:22 leaf+ 阅读(380) 评论(0) 推荐(0)
摘要:一、臭美app效果: 我的需求是这样,上面正常滑动,点击下面的小卡牌,上面的滑动区也随之切换到当前的点击态。 二、实现: css: 主要设置可见区域的几张卡牌的位置,注意的几个位置是,中间的激活态和左右两边的元素,swiper已经在运行的时候给他们加上了固定的类名。 html: JavaScript 阅读全文
posted @ 2017-08-16 10:17 leaf+ 阅读(5702) 评论(1) 推荐(1)
摘要:前言 队列和栈很像,只是用了不同的原则。队列是遵循先进先出(FIFO)原则的一组有序的的项,队列在尾部添加新元素,从顶部移除元素。最新添加的元素必须必须排队在队列的,末尾。可以想象食堂排队买饭的样子。 一、创建队列 1、创建一种数据结构来保存队列里面的数据,这里选择数组 2、声明一些栈的方法 enq 阅读全文
posted @ 2017-07-23 19:50 leaf+ 阅读(309) 评论(0) 推荐(0)
摘要:前言 栈是一种遵循后进先出(LIFO)原则的有序集合,新添加的或待删除的元素都保存在栈的末尾,称作栈顶,另外一端就叫栈底。在栈里,新元素都靠近栈顶,旧元素都接近栈底。可以想象桌上的一叠书,或者厨房里的堆放的盘子。 一、栈的创建 可以创建一个类来表示栈 二、栈的应用 十进制转二进制 十进制转成其他进制 阅读全文
posted @ 2017-07-23 12:25 leaf+ 阅读(194) 评论(0) 推荐(0)
摘要:w3cplus: ES6箭头函数和它的作用域 阮一峰: 函数的扩展 主要注意几个点: (1)函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。 (2)不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误。 (3)不可以使用arguments对象,该对象在函数体内 阅读全文
posted @ 2017-07-22 23:16 leaf+ 阅读(226) 评论(0) 推荐(0)
摘要:http://gsgd.co.uk/sandbox/jquery/easing/jquery.easing.1.3.js http://www.robertpenner.com/easing/penner_chapter7_tweening.pdf http://easings.net/zh-cn 阅读全文
posted @ 2017-07-19 20:57 leaf+ 阅读(1151) 评论(0) 推荐(0)
摘要:今天看到一个关于对象复制的demo, 需求是复制一份数据,之后修改里面num的值,数据结构如下: 一、看到需求,脑海中应清楚几个点 1、复制一份之后修改,修改副本对原对象不能有改动。 2、复制的对象里面有数组,还要判断对象是不是数组。 3、修改副本。 二、理解对象拷贝 浅复制只会将对象的各个属性进行 阅读全文
posted @ 2017-07-15 23:36 leaf+ 阅读(407) 评论(0) 推荐(0)