safari 附件下载文件被添加后缀(html\exe等)的问题

通过程序读取文件或生成文件来下载,一般只需设置 header 头即可: header(\'Content-type: application/pdf\'); header(\'Content-Disposition: attachment; filename=\"保存时的文件名.pdf\"\'); 在谷歌、火狐等浏览器中,Content-type 的设置貌似并不重要,但在 Safari 上则有不同: 当 Co
safari 附件下载文件被添加后缀(html\exe等)的问题

Firefox 下对包含时分秒日期的 Date 格式化兼容方案

对于格式为 \'2015-09-14 09:30:16\' 的日期字符串,在谷歌等浏览器下可以直接使用 new Date 进行格式化: new Date(\'2015-09-14 09:30:16\'); //Mon Sep 14 2015 09:30:16 GMT+0800 (中国标准时间) 但在 firefox 上却会输出 “Invalid Date”。不兼容现象由此产生。 Date 对象将字符串转为
Firefox 下对包含时分秒日期的 Date 格式化兼容方案

ECMAscript6 转换器 babel 的安装与使用

ECMAscript6 标准于 2015 年 6 月正式发布,所以又称为 ECMAscript 2015。随着各浏览器对其逐渐完善的支持,可以预见的是,2017 至 2018 年它将会取代 ES5 成为主流。 使用 Babel 转换器可以让你在未获得浏览器支持的情况下,以 ES6 的语法形式书写代码, Babel 负责将它转换为可在当前主流浏览器环境执行的 ES5 的代码。 一、安装 使用 npm
ECMAscript6 转换器 babel 的安装与使用

使用 jquery-mockjax 模拟 ajax 请求独立进行前端开发

基于前后端分离的开发方式,后端只需提供 api 接口,前端负责数据展示和交互实现。 对于前端开发来说,一个比较大的问题是,api 接口数据不能较早的获得,那么只能使用模拟数据。前端模拟数据可有如下思路: 1. 使用临时的数据获取方法替代 ajax 接口请求,联调时修改数据获取方式; 2. 使用代理方式,代理转发到本地模拟文件或模拟接口; 3. 在前端截获接口请求,针对性处理后返回数据。 方法一在简
使用 jquery-mockjax 模拟 ajax 请求独立进行前端开发

javascript 数组的深度复制

一般情况下,使用 “=” 可以实现赋值。但对于数组、对象、函数等这些引用类型的数据,这个符号就不好使了。 1. 数组的简单复制 1.1 简单遍历 最简单也最基础的方式,自然是循环处理。示例: function array_copy(arr) { var out = , i, len; if (arr instanceof Array === false) { return arr; } for
javascript 数组的深度复制

JavaScript 事件机制详细解读(摘)

与浏览器进行交互的时候浏览器就会触发各种事件。比如当我们打开某一个网页的时候,浏览器加载完成了这个网页,就会触发一个 load 事件;当我们点击页面中的某一个“地方”,浏览器就会在那个“地方”触发一个 click 事件。 这样,我们就可以编写 JavaScript,通过监听某一个事件,来实现某些功能扩展。例如监听 load 事件,显示欢迎信息,那么当浏览器加载完一个网页之后,就会显示欢迎信息。 下
JavaScript 事件机制详细解读(摘)

前端自动化测试工具:SlimerJS、phantomJS 和 CasperJS

对于富客户端的 Web 应用页面,自动登录、页面修改、抓取页面内容、屏幕截图、页面功能测试...面对这些需求,使用后端语言需要花费不少的精力才能实现。此时 SlimerJS、phantomJS 或 CasperJS 或许是更好的一种选择。 一、PhantomJS 和 SlimerJS PhantomJS 和 SlimerJS 都是服务器端的 JavaScript API 工具,可以理解为无界面的可
前端自动化测试工具:SlimerJS、phantomJS 和 CasperJS

CSS3 Flex 弹性盒模型与文本内容居中

实现文本水平和垂直居中的方法有很多,但都是通过各种技巧来实现,优劣点都会存在。 CSS3 Flex 弹性盒模型在 IE11 及其他现代浏览器中已广泛支持,其丰富的功能和繁多的属性定义,使得入门起来有点抽象难懂。 这里只通过示例简单介绍使用 CSS3 Flex 弹性盒布局方式,实现文本居中的方法。 CSS 核心代码: display: flex; align-items: center; justi
CSS3 Flex 弹性盒模型与文本内容居中

基于浏览器的幻灯演示工具组件:impress.js 快速上手及相似组件推荐

作为 Web 前端开发者,基于浏览器的幻灯演示,相比 Microsoft PPT 这种传统的幻灯片软件来说拥有很多的优势。但如果完全自己来实现,又明显非常的麻烦。那么有没有简单易用的开源组件呢?如果你以这样的目的正在寻找,impress.js 或许就是你所需要的。 impress.js 是一个基于 css3 和 javascript 开发的演示工具,基于 webkit 浏览器(Chrome、Saf
基于浏览器的幻灯演示工具组件:impress.js 快速上手及相似组件推荐

Web 前端开发的包管理工具 bower 快速入门

1. 什么是 bower,有什么作用 富客户端要求的前端开发,少不了大量的前端库文件引用,于是就可能遇到如下问题: 逐个下载、复制到期望位置嫌麻烦 库之间的依赖/版本依赖不清楚,总是出问题 版本升级时重复性的操作,还易搞错 ... 使用 bower 这样的包管理工具,可以很好的处理类似如上描述的问题。其实各种包管理工具的主要职责均类似如此。 2. bower 安装 需要系统已安装 nodejs。命
Web 前端开发的包管理工具 bower 快速入门