摘要: 前言 作为 前端开发者,了解一点 Web 安全方面的基本知识是有很必要的,未必就要深入理解。本文主要介绍常见的网络攻击类型,不作深入探讨。 正文 网络攻击的形式种类繁多,从简单的网站敏感文件扫描、弱口令暴力破解,到 SQL 注入,再到复杂的网络劫持等,种类万千。 本文只介绍以下两种攻击: XSS 攻 阅读全文
posted @ 2017-08-24 21:53 yunser_blog 阅读(742) 评论(0) 推荐(3) 编辑
摘要: 前言 上一篇文章 "《Canvas 仿百度贴吧客户端 loading 小球》" 实现了百度贴吧客户端的 loading 小球效果,同时还留下了一个任务:实现灵动的红鲤鱼动画。 这个动画效果实现起来比较难,需要良好的数学基础。而中学时学到的三角函数知识,早就还给数学老师了。现在一边练习一边写这篇文章, 阅读全文
posted @ 2017-08-05 22:30 yunser_blog 阅读(1165) 评论(2) 推荐(2) 编辑
摘要: 前言 几天前在简书上看到在一篇文章《 "Android仿百度贴吧客户端Loading小球" 》,看了一下作者,他写了两个好玩的 demo,效果图如下: 今天趁着周末有空,用 H5 的 Canvas 仿了一下。这篇文章只实现第一个效果图。 这是我实现的效果: 实现原理 实现原理是参考简书的那篇文章,这 阅读全文
posted @ 2017-08-05 15:40 yunser_blog 阅读(924) 评论(5) 推荐(6) 编辑
摘要: ePub 简介 ePub 是一种电子书的标准格式,平时我看的电子书大部分是这种格式。在手机上我一般用“多看”阅读 ePub 电子书,在 Windows 上找不到用起来比较顺心的软件,所以很久之前就想折腾一下,自己开发一个 ePub 电子书阅读器。这两天趁着有空,做了一个简单的阅读器。虽然还有些 bu 阅读全文
posted @ 2018-04-06 23:07 yunser_blog 阅读(12834) 评论(1) 推荐(2) 编辑
摘要: Vue 之类的 MVVM 框架,能帮助我们用更少的代码实现复杂的业务。 为了简单一点,开发计划分成三阶段: 一,数据写死,实现基本的答题效果。支持多种题型。 二,使用本地存储保存数据,支持题目录入的功能。 三,使用数据库,后台实现接口给前端调用。 目前,只实现了第一阶段。 "Demo" , "源码" 阅读全文
posted @ 2018-01-22 23:21 yunser_blog 阅读(8009) 评论(6) 推荐(0) 编辑
摘要: html2canvas 简介 "html2canvas" 顾名思义,就是一个可以把 DOM 元素转换成图片的类库,常用于网页截图。网页截图常见的应用场景是,在意见反馈里对当前页面进行截图,方便反馈页面出现的问题,比如页面样式出错,举报网站上的违规行为等等。 除了截图外,还可以用来制作一些在线生成图片 阅读全文
posted @ 2018-01-17 21:20 yunser_blog 阅读(2992) 评论(0) 推荐(2) 编辑
摘要: 这是著名开源项目 FileSaver.js 的 README.md,我把它翻译成中文。发出来,方便自己和他人阅读。 项目地址: "https://github.com/eligrey/FileSaver.js" 如果你需要保存较大的文件,不受 blob 的大小限制或内存限制,可以看一下更高级的 "S 阅读全文
posted @ 2017-10-05 16:49 yunser_blog 阅读(79510) 评论(0) 推荐(2) 编辑
摘要: 在前端,有两个词经常被提及:shim 和 polyfill。最近在翻译文章时又遇到了 polyfill 这个词,准备把这两个概念理清楚。 关于 JavaScript 的兼容性问题,通常有不同的解决方案。 举个例子,旧版本的 IE 不支持标准的 XMLHttpRequest,但支持自家的 Active 阅读全文
posted @ 2017-10-05 15:33 yunser_blog 阅读(670) 评论(0) 推荐(2) 编辑
摘要: 这是著名开源项目 clipboard.js 的 README.md,我把它翻译成中文。发出来,方便自己和他人阅读。 项目地址:https://github.com/zenorocha/clipboard.js " " 现代化的“复制到剪切板”插件。不包含 Flash。gzip 压缩后仅 3kb。 为 阅读全文
posted @ 2017-10-05 11:08 yunser_blog 阅读(58539) 评论(2) 推荐(8) 编辑
摘要: 原文: "Creating Your First Desktop App With HTML, JS and Electron" 作者: "Danny Markov" 近年来 web 应用变得越来越强大,但是桌面应用仍然有充分利用硬件的优势。 今天,我们可以通过我们熟悉的 HTML、JS 和 Nod 阅读全文
posted @ 2017-10-04 19:24 yunser_blog 阅读(8323) 评论(1) 推荐(0) 编辑
摘要: 同一个问题可以用不同的算法实现,而算法是有优劣之分的。我们经常需要对算法进行分析,以便于选择合适的算法和改进算法。 通常我们从两个维度来描述算法的优劣:程序代码的执行时间和代码占用的内存空间。两者分别叫做算法的时间复杂度和算法的空间复杂度,合称算法的复杂度。 时间复杂度和空间复杂度可以反映出算法的效 阅读全文
posted @ 2017-10-03 00:01 yunser_blog 阅读(573) 评论(1) 推荐(0) 编辑
摘要: 前言 本文主要介绍本地存储的基本使用,以及它和 Cookie、SessionStorage 的区别。 简单回顾 Cookie 在 HTML5 之前,本地存储数据一般是通过 Cookie 来完成的。我们可以把 Cookie 理解为一个长度有限的字符串,服务端和客户端都能读写这个字符串,并且每次请求时, 阅读全文
posted @ 2017-08-29 20:30 yunser_blog 阅读(1898) 评论(5) 推荐(1) 编辑
摘要: 前言 本文仅是 Web Workers 的入门科普文章,不涉及太琐碎的知识点。 我们知道,在 Web Workers 出来之前,JavaScript 是单线程的。即使是 之类的看似多线程的函数,实际上也是单线程执行的。 有时,我们需要在浏览器执行一个比较耗时的计算: function count() 阅读全文
posted @ 2017-08-29 14:28 yunser_blog 阅读(675) 评论(0) 推荐(0) 编辑