HTML5
文章平均质量分 74
非著名coder
一个非著名coder,喜欢折腾前端各种技术。也慢慢向后端渗透。个人网站:http://www.houyuewei.cn
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Karma测试环境搭建
Karma是一个JavaScript的测试运行器。Karma更是一个测试环境,使用Karma可以很方便的的运行测试,今天我们简单地介绍一karma测试环境的搭建和基本的测试,我已经写好了一套测试用例,有谁需要可以私信我。官网如下:http://karma-runner.github.io/0.12/index.html我们总是实现完feature后再编写测试用例,但是根据TDD的原则,开发的流程一般原创 2016-05-18 15:52:11 · 1720 阅读 · 0 评论 -
2015年要看完的书
这个不是2015年的全部书单,因为随时还会有新书补充进来,无论是纸质的还是电子版1、webkit技术内幕(部分章节精读)2、HTTP权威指南(参考,已经泛读)3、HTML5数据推送应用开发(精读)4、黑客与画家(已读)5、Web应用安全权威指南 , 白帽子讲Web安全 (精读)6、MEAN web development(已经完成)7、Github入门与实践8、Clean code(精读)9、Ra原创 2016-05-18 16:01:19 · 529 阅读 · 0 评论 -
测试angular中的service
在angularjs中,service是单例的,通常用来与后台交互数据,需要数据的组件只需要注入某个service即可,service的典型例子:app.factory(‘EventService’, [‘http′,′http', 'q’, function(http,http, q) { return { getEvents: function() {原创 2016-05-18 16:00:47 · 1281 阅读 · 0 评论 -
测试angular中的controller
angularjs中的controller主要负责业务逻辑的处理、数据模型,页面元素的展示等,通常一个controller会依赖一个或者多个service,通过service从数据库拉数据后保存到controller,controller的简陋的例子如下:app.controller(‘EventController’,[‘scope′,′EventService′,function(scope',原创 2016-05-18 16:00:24 · 511 阅读 · 0 评论 -
Moco in action
Moco 是一个轻量级的打桩框架,这个是构建在http协议上的,并且支持 Web service , REST等。对于前端来说,是实现前后端分离的关键,我们可以通过Moco配置返回数据模拟服务器返回的真实数据。我接下来将写两篇文章介绍怎么测试angular的controller和service,将用到Moco,这篇文章就作为铺垫吧。Moco快速入门:首先,从 repo1.maven.org/mave原创 2016-05-18 15:59:05 · 1074 阅读 · 0 评论 -
Gulp in action
gulp 和grunt一样,都是任务自动管理工具,和grunt相比,gulp更加好用,配置也更加灵活。1、安装gulp也是基于nodejs的,同样可以通过npm安装,全局安装npm install -g gulp 在项目中安装npm install gulp –save-dev 2、两个例子创建名为gulpfile.js,在这个文件中通过gulp命令定义gulp 任务,在gulpfile.js添原创 2016-05-18 15:57:41 · 604 阅读 · 0 评论 -
Grunt in action
Grunt 是一个自动任务运行器,会安装预先定义的顺序自动运行一系列的的任务,可以简化工作流程,减少重复性的工作从而提高工作交流,这篇简易教程会从0着手详细介绍grunt。1、安装grunt是基于nodejs的,如果你还没有安装,请从http://nodejs.org/下载安装windows版或者Linux版,安装nodejs后,运行如下命令:sudo npm install -g grunt-cl转载 2016-05-18 15:57:18 · 473 阅读 · 0 评论 -
angularjs培训之service
原文地址:http://angular-tips.com/blog/2013/08/understanding-service-types/Angular中有几种不同类型的services。每一种都有自己的独特用法。需要记住的非常重要的一点是service总是一个单体,无论是哪种类型的service,这是个很被期望的行为。注释:单体是一种设计模式,它限制了每一个类仅能够实例化为一个对象。无论我们在什转载 2016-05-18 15:55:54 · 316 阅读 · 0 评论 -
angularjs中的$watch
在使用AngulaJS编写应用时,我们经常需要做的一件事情就是对模型中的变量进行监视,并对其发生的变化做出相应的回应。AngularJS为我们提供了一个非常方便的$watch方法,它可以帮助我们在每个scope中监视其中的变量。下面是一个非常简单的例子:<html ng-app=’myApp’> <head> <meta charset=”UTF-8”>原创 2016-05-18 15:54:04 · 793 阅读 · 0 评论 -
[转载]汇总各浏览器核心(js引擎及排版引擎)深究
前言写本篇文章的初衷是追寻各浏览器对css、js实现性能而码,再说了,个人认为要做个负责前端应该要对其底层有所了解,这样在有的时候对bug能迅捷的对症下药。小熊花了近6个小时搜索相关资料加上本身开发的一些经验总结出本篇。起初开始的小熊只知道IE核心、FF核心、OP核心等(前些年的主流浏览器),而如今风行的Safari(本文简称SF)和Chrome(本文简称GG),都是Webkit的开源核心,虽然代表转载 2016-05-18 16:01:56 · 1100 阅读 · 0 评论 -
XMLHttpRequest level2介绍
1、xmlHttpRequest level1:xmlHttpRequest是一个浏览器脚本语言,用来给server发送http或者https请求来加载,出于安全考虑,这个只能用于同域访问(还有其他的缺点,比如说不能读取或者上传二进制文件,传送和发送数据时没有进度信息)。Xmlhttprequest概念的形成是源于微软的outlook web access,后来使用这样的概念形成了msxml库,这就原创 2016-05-18 15:51:48 · 753 阅读 · 0 评论 -
ECMAScript5新特性之对象篇
1、Ojbect.create(O[,properties]):var Person = { name : ‘hcc’, hungry : false, play : function (){ this.hungry = true; return ‘I am playing!’;原创 2016-05-18 15:51:20 · 464 阅读 · 0 评论 -
ECMAScript5特性介绍之数组篇
Es5的特性以及发布很长时间了,增加了很多实用的特性(Array的 indexOf、every,some,forEach等,Object的create,keys,isFrozen等),这些特性已经得到个浏览器的支持,比如:IE9+,FF21+,chrome23+,opera 15+,SF6+都已经基本支持全部特性。详细的特性检测见:http://kangax.github.io/compat-tab原创 2016-05-18 15:50:31 · 570 阅读 · 0 评论 -
AMD和CMD的区别,转载玉伯在知乎上的回答。
AMD 规范在这里:https://github.com/amdjs/amdjs-api/wiki/AMD CMD 规范在这里:https://github.com/seajs/seajs/issues/242AMD 是 RequireJS 在推广过程中对模块定义的规范化产出。 CMD 是 SeaJS 在推广过程中对模块定义的规范化产出。 类似的还有 CommonJS Modules/2.0原创 2016-05-18 15:49:59 · 599 阅读 · 0 评论 -
异步加载的requirejs,你值得拥有
1、综述:RequireJS的目标是代码的模块化,它使用了不同于传统原创 2016-05-18 15:48:37 · 534 阅读 · 0 评论 -
开发流程告诉你,为什么是软件工程师而不是码农
我们以一个APP成功上线,作为思考的起点,往前推,看看我们需要做些什么?1一个99美元的开发者帐号 嗯,如果不需要真机跑程序,这个可以是最后一步。当然早早买个开发帐号,好处会非常大,看到自己的程序在真机上跑,整个人都兴奋起来,就不用老喝鸡汤。2一个App包 当然,这才是真正难点。所以这里会有大量的细分步骤。1)异常控制 在所有数据都没有问题之后,我们需要反复用各种奇葩操作来把应用搞崩溃,或者把数据搞原创 2016-05-18 15:42:26 · 2179 阅读 · 0 评论 -
html5本地存储之indexedDb
对于以下需求:离线存储读取数据 允许用户对数据进行增删改操作 数据存储在本地,不依赖后端 数据支持索引查询 我们可以考虑使用html5新特性的本地存储,主要有以下几种:Web Sql(IE,FF都不支持,http://www.w3.org/TR/webdatabase/) IndexedDB Local Storage(轻松存储简单的数据结构,如果存储复杂的较麻烦) Session S原创 2016-05-18 15:41:27 · 899 阅读 · 0 评论 -
ECMAScript6学习之三
1、展开运算符(spread (…) operator)以前我们把某一个方法作为某一个对象的方法调用时,方法如下: function ecma(x, y, z) { alert('x:' + x + ", y=" + y + ', z=' + z); }var args = [0, 1, 2];ecma.apply(null, args);有了ECMAScript6就原创 2016-05-18 15:40:09 · 652 阅读 · 0 评论 -
angularjs中的interceptor和挺好的例子
原文地址:http://www.webdeveasy.com/interceptors-in-angularjs-and-useful-examples/AngularJS 的 $http 服务允许我们通过发送 HTTP 请求方式与后台进行通信。在某些情况下,我们希望可以捕获所有的请求,并且在将其发送到服务端之前进行操作。还有一些情况是,我们希望捕获响应,并且在完成调用之前处理。一个很常用的场景就是转载 2016-05-18 15:56:19 · 592 阅读 · 0 评论 -
也玩图片预览
在做图片管理或者人员信息管理(比如说头像上传)时,总会涉及到图片上传和图片预览的问题,通常会有两种解决方案做图片上传预览,第一种方案是先将图片“偷偷滴”传到server,然后server返回图片的url,在客户端的img标签中将src属性设置为刚返回的url。这种方式显然消耗了额外的带宽,因为包含了上传和下载过程。第二种方案是上传前就进行预览,下面我们看下解决方案: IE下图片浏览处理 IE中的原创 2016-05-18 14:31:32 · 397 阅读 · 0 评论 -
[Repost]Custom Elements defining new elements in HTML
from:http://www.html5rocks.com/en/tutorials/webcomponents/customelements/IntroductionThe web severely lacks expression. To see what I mean, take a peek at a “modern” web app like Gmail: There’s noth转载 2016-05-18 14:25:15 · 619 阅读 · 0 评论 -
[Repost]Shadow DOM 101
from:http://www.html5rocks.com/zh/tutorials/webcomponents/shadowdom/IntroductionWeb Components is a set of cutting edge standards that:Make it possible to build widgets …which can be reused reliably转载 2016-05-18 14:24:17 · 577 阅读 · 0 评论 -
Attribute vs property
这两者太容易混淆了,简单来说,DOM对象拥有property属性,是一种特定的变量,property可以指定为任意的变量,如字符串,数字,对象等,jquery1.6以后的版本可以使用$.prop(key)方法获得properties,举个例子Hi$(‘#linkID’).prop(‘href’); // returns “http://example.com/page2.html” (‘#link原创 2016-05-18 14:28:32 · 439 阅读 · 0 评论 -
[Repost]Cross-Browser, Event-based, Element Resize Detection ,the 1st version
During your coding adventures, you may have run into occasions where you wanted to know when an element in your document changed dimensions – basically the window resize event, but on regular elements.转载 2016-05-18 14:27:29 · 403 阅读 · 0 评论 -
[Repost]Cross-Browser, Event-based, Element Resize Detection ,the 2nd version
UPDATE: This post has seen a significant change from the first version of the code. It now relies on a much simpler method: a hidden object element that relays its resize event to your listeners.DOM El转载 2016-05-18 14:25:59 · 493 阅读 · 0 评论 -
[转载]React.js 2016 最佳实践
译者按:近几个月React相关话题依旧火热,相信越来越多的开发者在尝试这样一项技术,我们团队也在PC和移动端不断总结经验。2016来了,这应该是React走向成熟的一年,不管你是新手,还是已经对React有所了解,是时候总结一下最佳实践了,让我们看看国外的开发者总结了哪些好的实践吧~===========译文分割线==============2015可以算是React之年了,关于其版本发布和开发者大转载 2016-05-18 14:11:51 · 1136 阅读 · 0 评论 -
React和Redux的连接react-redux
最近在探索React相关的东西。Redux本身和React并没有之间的关联,它是一个通用Javscript App模块,用做App State的管理。要在React的项目中使用Redux,比较好的方式是借助react-redux这个库来做连接,这里的意思是,并不是没有react-redux,这两个库就不弄一起用了,而是说react-redux提供了一些封装,一种更科学的代码组织方式,让我们更舒服地在原创 2016-05-18 14:11:04 · 412 阅读 · 0 评论 -
EcmaScript6学习之二
1、Iterator浏览器支持情况:FF31+js中提供来很多方法遍历集合中的元素,比如说for, forEach, for …of ,map。在ES6中,iterator是一个对象,提供next()方法依次访问下一个元素。也就是说要使用next()方法,就需要先创建一个iterator对象,先看个例子:var lang = { name: ‘JavaScript’, birthYear: 1995原创 2016-05-18 15:39:28 · 522 阅读 · 0 评论 -
javascript Promises
原文地址:http://www.html5rocks.com/zh/tutorials/es6/promises/#toc-api女士们先生们,请准备好迎接 Web 开发历史上一个重大时刻……[鼓声响起]JavaScript 有了原生的 Promise![漫天的烟花绽放,人群沸腾了]这时候你大概是这三种人之一:你的身边拥挤着欢呼的人群,但是你却不在其中,甚至你还不大清楚“Promise”是什么。你耸转载 2016-05-18 15:53:36 · 648 阅读 · 0 评论 -
$watch How the $apply Runs a $digest
原文地址:http://angular-tips.com/blog/2013/08/watch-how-the-apply-runs-a-digest/这篇博文主要是写给新手的,是给那些刚刚开始接触Angular,并且想了解数据帮定是如何工作的人。如果你已经对Angular比较了解了,那强烈建议你直接去阅读源代码。Angular用户都想知道数据绑定是怎么实现的。你可能会看到各种各样的词汇:watch转载 2016-05-18 15:55:10 · 871 阅读 · 0 评论 -
使用Grunt启动和运行
原文地址:http://www.smashingmagazine.com/2013/10/29/get-up-running-grunt/这篇文章中,我们将介绍如何在项目使用Grunt让你的网站更快。我们简要分析下grunt能够做什么,如何创建和使用各种插件完成各种繁重的任务。我们将看看如何构建一个简单的表单验证器,使用Sass预处理器,如何使用grunt-cssc和CssMin结合压缩我们的CSS转载 2016-05-18 15:56:53 · 2301 阅读 · 1 评论 -
Hello,World!
后面将博客http://hcc0926.blog.51cto.com的内容同步过来,欢迎常来逛逛!原创 2016-05-18 16:07:23 · 737 阅读 · 0 评论 -
利用Express搭建空白工程
Express是基于nodejs的一个Web框架,它提供了一系列强大的特性帮助你开发一个强大而且灵活的web application.(1)官网:http://expressjs.com/中文站点: http://expressjs.jser.us/(2)建立一个web application的,Let’s go!1、下载nodejs,因为Express是建立在nodeJS的平台下的,所以首先我们要原创 2016-05-18 16:06:49 · 651 阅读 · 0 评论 -
[转载]解读2014之前端篇:任性的颠覆式改变
HTML5正式定稿,ECMAScript 6 规范从纸上走到现实2014年10月28日,W3C宣布HTML5正式定稿为标准,这不仅仅标志着历经8年的标准纷争告一段落,也代表着HTML5这个名词会逐步洗去铅华,其技术真正融入到Web开发的每个角落,就像当年Ajax一样,当大家不再大张旗鼓鼓吹概念和商业炒作时,正是其成熟时代到来了。HTML5规范和以前最大区别是让Web最基础架构从Web Page升级到转载 2016-05-18 16:05:41 · 1096 阅读 · 0 评论 -
Angularjs中的标签模式和html5模式
浏览$location的实例代码我们不难发现,每次的url中都会带一个#,这是因为angularjs默认使用的是标签模式,它和html5模式有什么区别? (1)标签模式 标签模式使用的是内部链接的技巧,URL后面紧跟一个#,angularjs本身不会重写标签,也不需要服务器端的支持,链接后的URL样子基本是这样的:http://example.com/#/some/path?foo=bar&ba原创 2016-05-18 16:05:11 · 4235 阅读 · 0 评论 -
搞颠provider,factory 和service
1、什么是provider provider可以为应用提供通用的服务,所有的服务工厂都是有provider提供的,可以提供字符串,对象等。我们先看下provider的源码:function provider(name, provider_) { assertNotHasOwnProperty(name, ‘service’); if (isFunction(provider_)原创 2016-05-18 16:04:49 · 796 阅读 · 0 评论 -
install nginx on ubuntu
引子 当我们安装了一个Ubuntu14.04 server的时候,我们需要简单的配置步骤来为服务的安装做些准备,这样做可以提高服务器的安全性和易用性,也是为后续的操作提供基础。第一步:使用Root用户登录 登录server,你当然要知道server的IP地址和root用户密码,然后使用root用户登录。首先,客户端使用putty或者xshell登录,请注意root权限是Linux系统的最高权限,原创 2016-05-18 14:32:07 · 487 阅读 · 0 评论 -
Curl命令大法
使用curl命令可以轻松实现发送和接受文件,它支持几乎所有的协议(file,ftp,ftps,http,https,imap,imaps,pop3,pop3s,smtp,smtps,telnet),还有支持断点续传,可以跨平台,支持主流的操作系统,也支持SSL链接等的特点,这么强大的命令不能错过,小小的技巧就可以大大提高我们的开发效率。 1.下载单个文件curl http://www.houyue原创 2016-05-18 14:42:26 · 1355 阅读 · 0 评论 -
[转载]前端工程系列文章之——基础篇
“喂喂喂,那个切图的,把页面写好就发给研发工程师套模板吧。”你好,切图仔。不知道你的团队如何定义前端开发,据我所知,时至今日仍然有很多团队会把前端开发归类为产品或者设计岗位,虽然身份之争多少有些无谓,但我对这种偏见还是心存芥蒂,酝酿了许久,决定写一个系列的文章,试着从工程的角度系统的介绍一下我对前端,尤其是Web前端的理解。只要我们还把自己的工作看作为一项软件开发活动,那么我相信读过下面的内容你也一转载 2016-05-18 14:40:55 · 439 阅读 · 0 评论 -
Error Handling in Node.js
From https://www.joyent.com/developers/node/design/errorsError handling is a pain, and it’s easy to get by for a long time in Node.js without dealing with many errors correctly. But building robust Nod原创 2016-05-18 14:40:09 · 1244 阅读 · 0 评论
分享