Gulp 结构化最佳实践

分类: 标签:‚ ‚  评论:6 6 评论

在 Gulp 的官方文档中,Gulp 的任务都是写在 gulpfile.js 这一个文件中的,如果任务数量不多,这并不会有什么问题,但当任务数量较多时,会造成代码可读性差,难以维护,多人协作时还会容易造成冲突。因此,更好的处理方式是把 Gulp 的代码结构化。 开始结构化 https://github.com/QMUI/qmui_web 这是一个前端框架,主要由一个 SASS 方法合集与内置的工作流构成,其中工作流部...

Read More –>

SassDoc 详细介绍与最佳实践

分类: 标签:‚ ‚ ‚ 

SassDoc 是一款专门为 Sass 代码生成注释的工具,通过 SassDoc,开发者可以通过类似 JSDoc 的方式在 Sass 代码上添加注释,然后直接用命令生成文档。最近在处理团队框架 QMUI Web 时,遇到了需要为大量 Sass 方法写文档的问题,因此研究了这个工具,本文将会详细说明 SassDoc 的使用方法以及其中的最佳实践。 基本使用 在 Sass 中,可以使用多行注释 /* xxxx */ 和单...

Read More –>

腾讯 QMUI 团队 Web 前端框架正式发布

分类: 标签:‚ ‚ ‚  评论:1 1 评论

QMUI Web 一个旨在提高 UI 开发效率、快速产生项目 UI 的前端框架,由腾讯 QMUI 团队出品。 Github: https://github.com/QMUI/qmui_web 官网:http://qmuiteam.com/web QMUI Web 是一个专注 Web UI 开发,帮助开发者快速实现特定的一整套设计的框架。框架主要由一个强大的 SASS 方法合集与内置的工作流构成。通过 QMUI We...

Read More –>

博客近况

分类: 标签:‚ ‚  评论:17 17 评论

一. 主机 去年开始断断续续地更换了几次主机,始终还是不稳定,于是最近下了决心,备案域名,把博客迁到阿里云的国内主机。 幸好一直有做备份,迁移文件倒也不费时,但由于原主机与阿里云 MySQL 的版本相差比较大,而且博客的数据量也不少,所以迁移数据时费了一些时间,总算把所有数据迁移过来。 毕竟这是个长年长草的博客了,最近都没更新,以前的文章可不想丢失了。 二. 主题 已经三年都没有换主题了,现在回头看来,主题当时做得有...

Read More –>

iOS 开发之照片框架详解之二 —— PhotoKit 详解(下)

分类: 标签:‚ ‚  评论:23 23 评论

这里接着前文《iOS 开发之照片框架详解之二 —— PhotoKit 详解(上)》,主要是干货环节,列举了如何基于 PhotoKit 与 AlAssetLibrary 封装出通用的方法。 三. 常用方法的封装 虽然 PhotoKit 的功能强大很多,但基于兼容 iOS 8.0 以下版本的考虑,暂时可能仍无法抛弃 ALAssetLibrary,这时候一个比较好的方案是基于 ALAssetLibr...

Read More –>

iOS 开发之照片框架详解之二 —— PhotoKit 详解(上)

分类: 标签:‚ ‚ ‚ ‚  评论:9 9 评论

一. 概况 本文接着?iOS 开发之照片框架详解,侧重介绍在前文中简单介绍过的 PhotoKit 及其与 ALAssetLibrary 的差异,以及如何基于 PhotoKit 与 AlAssetLibrary 封装出通用的方法。 这里引用一下前文中对 PhotoKit 基本构成的介绍: PHAsset: 代表照片库中的一个资源,跟 ALAsset 类似,通过 PHAsset 可以获取和保存资源 PHFetchOpt...

Read More –>

HTML 不同空格的特性与表现研究

分类: 标签:‚ ‚ ‚  评论:8 8 评论

一. 概要 在编写 HTML 模板时,有时候会利用空格来充当文字排版的手段,最为常见的情况是在一段文字之间插入空格,来分隔相对独立的词汇。但面对这种情况,一般是不会直接使用普通空格(半角空格,即英文输入法下键盘直接输入的空格),因为当我们期望连续输入几个这样的空格来制造一段空白时,实际最终网页上显示出的空白大小只有一个空格的大小,因此通常会用   来代替半角空格,连续输入多个   ...

Read More –>

iOS 开发之照片框架详解

分类: 标签:‚ ‚  评论:13 13 评论

一. 概要 在 iOS 设备中,照片和视频是相当重要的一部分。最近刚好在制作一个自定义的 iOS 图片选择器,顺便整理一下 iOS 中对照片框架的使用方法。在 iOS 8 出现之前,开发者只能使用 AssetsLibrary 框架来访问设备的照片库,这是一个有点跟不上 iOS 应用发展步伐以及代码设计原则但确实强大的框架,考虑到 iOS7 仍占有不少的渗透率,因此 AssetsLibrary 也是本文重点介绍的部分。...

Read More –>

使用 HTML5 History 新特性增强 Ajax 的体验

分类: 标签:‚ ‚ ‚  评论:20 20 评论

一. 场景再现 如大家熟知,Ajax 可以实现页面的无刷新操作,但会造成两个与普通页面操作(有刷新地改变页面)有着明显差别的问题—— URL 没有修改以及无法使用前进、后退按钮。例如常见的 Ajax 分页,在第一页点击第二页的链接,Ajax 分页完成后浏览器地址栏上显示的 URL 依然是第一页的 URL,使用后退按钮也无法回到第一页。url 的改变代表一个标识,在传统的网页体验中,内容的变更伴随 url 的改变,ur...

Read More –>

WAI-ARIA —— 让盲人更清楚我们的网页

分类: 标签:‚  评论:6 6 评论

我曾经根据网上一些流行的无障碍建议对博客进行改进,希望能方便视障人士浏览我的博客,但经过一番“改进”之后,我发现这些建议并不完全奏效,用 NVDA 实际测试后,网站的无障碍可访问性并没有得到明显提升。最近几天,我重新思考了无障碍网页的设计,最终得到一些比较有效的方法,在这里整理一下! 一. 视障人士是如何浏览网页的? 要想让盲人清楚我们的网页,首先要了解盲人是如何浏览网页。如大家熟知,视障人士是通过屏幕阅读器来感知网...

Read More –>

特征检测而不是浏览器检测!

分类: 标签:‚ ‚  评论:44 44 评论

正如上一篇文章所述,最近趁着有空把 jQuery 的浏览器模块抽取出来,再修改成独立简洁的一个对象 —— support,可以方便地使用 JavaScript 进行特征检测。 是的,这里要介绍的,是特征检测而不是浏览器检测! 由于 JavaScript 在不同的浏览器中存在差异,尤其是不同内核的浏览器之间的差异更是明显,因此在传统的前端开发中,在实现某些功能的过程中会判断浏览器的型号和版本,再实现一个跨浏览器的解决方...

Read More –>