CSS百分比padding实现比例固定图片自适应布局

2017年08月17日 by 张 鑫旭 阅读 105229 次, 今日 56 次

对于绝大多数都布局,我们并不要求非要比例固定,但是有一种情况例外,那就是图片,因为图片原始尺寸它是固定的。在传统的固定宽度的布局下,我们会通过给图片设定具体的宽度和高度值,来保证我们的图片占据区域稳固;但是在移动端或者在响应式开发情况下,图片最终展现的宽度很可能是不确定的……

阅读全文…

HTML5按钮元素新属性formaction,formenctype等简介

2017年08月6日 by 张 鑫旭 阅读 46195 次, 今日 19 次

HTML5表单提交按钮新增加了formaction, formenctype等属性,这些属性是什么意思?有什么作用?本文就将通过一个个的案例带领大家去认识这些属性(共6个),以及在实际开发中的一些应用,希望能够对诸位的日常开发有所帮助。

阅读全文…

SVG <foreignObject>简介与截图等应用

2017年08月4日 by 张 鑫旭 阅读 74613 次, 今日 16 次

SVG图形表现非常给力,但是对于纯粹的文本展示却很吃力,例如希望文字到边缘可以自动换行,结果SVG却很难做到,对于XHTML而言这可以说是天生的理所当然的特性,那有没有什么办法让SVG元素中的文本也如同普通的HTML和CSS那样自动换行呢,有,那就是SVG的<foreignObject>元素!

阅读全文…

HTML5 file API加canvas实现图片前端JS压缩并上传

2017年07月30日 by 张 鑫旭 阅读 143670 次, 今日 79 次

很多网站的图片上传功能都会对图片的大小进行限制,尤其是头像上传,限制5M或者2M以内是非常常见的。然后现在的数码设备拍摄功能都非常出众,一张原始图片超过2M几乎是标配,此时如果用户想把手机或相机中的某个得意图片上传作为自己的头像,就会遇到因为图片大小限制而不能上传的窘境,不得不对图片进行再处理,而这种体验其实非常不好的。如果可以在前端进行压缩,就不会有这种尺寸限制的问题,自然用户体验就可以大大提升,非常具有价值!

阅读全文…

HTML5 indexedDB前端本地存储数据库实例教程

2017年07月20日 by 张 鑫旭 阅读 68199 次, 今日 7 次

HTML5 indexedDB和Web SQL Database都是本地数据库数据存储,Web SQL Database数据库要出来的更早,然并卵。从2010年11月18日W3C宣布舍弃Web SQL database草案开始,就已经注定Web SQL Database数据库是明日黄花。

未来一定是indexedDB的…

阅读全文…

借助Service Worker和cacheStorage缓存及离线开发

2017年07月12日 by 张 鑫旭 阅读 77765 次, 今日 9 次

html5 manifest缓存技术投入产出比有些低,因此不温不火,本文所要介绍的基于Service Worker和cacheStorage缓存及离线开发,套路非常固定,无侵入,且语言纯正,直接复制粘贴就可以实现缓存和离线功能,纯前端,无需服务器配合。一个看上去很酷的功能只要复制粘贴就可以实现,绝对是成本极低的,小白中的小白也能上手。

阅读全文…

了解JS中的全局对象window.self和全局作用域self

2017年07月6日 by 张 鑫旭 阅读 45951 次, 今日 6 次

在HTML5一些新特性出来之前,全局的self就是个没什么实用价值的半吊子。但是,随着HTML5一些新特性的到来,self开始慢慢登上正式的舞台…

阅读全文…

JS前端创建html或json文件并浏览器导出下载

2017年07月5日 by 张 鑫旭 阅读 135913 次, 今日 6 次

我们使用JS创建了一个动态的JSON数据,希望可以保存为JSON文件到本机系统,传统做法可能需要复制粘贴,而实际上,我们可以直接使用JS直接创建对应的JSON文件并让浏览器下载,而且代码和原理都出乎意料的简单。

阅读全文…

我是如何实现electron的在线升级热更新功能的?

2017年06月27日 by 张 鑫旭 阅读 72398 次, 今日 34 次

通常electron打包出来的文件都很大,有40~50M,如果每次改动升级都要下载个完整版本,实际上是很烦的。

实际上,只要主线程没有发生变化,我们是可以直接在线热更新我们的electron应用的。

阅读全文…

利用HTML5 Web Audio API给网页JS交互增加声音

2017年06月10日 by 张 鑫旭 阅读 105164 次, 今日 63 次

HTML5 Web Audio API可以让我们无中生有创造声音,而且是各种音调的声音,换句话说,我们通过JavaScript就会创建一个完整的音乐出来,这可能和我们以前的认知有些不一样,例如点击按钮出现一个点击的音效,传统思维可能是需要JS触发一个<audio>音频文件的播放,实际上,并不需要任何额外的资源,十几行JS代码就可以搞定,而这就是本文要介绍的内容。

阅读全文…