自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

皖林的博客

在某个年纪之前,你可以靠透支身体,小聪明和老天给你的运气一直取巧地活着。然而到了某个年纪之后,真正能让你走远的,都是自律,积极和勤奋。

  • 博客(72)
  • 资源 (3)
  • 收藏
  • 关注

原创 去掉angularjs路由的#,node为服务器

#或#!是angular路由的特征,但是有时候我们由于种种原因不愿意去使用它。参考这篇资料之后, http://blog.fens.me/angularjs-url/发现无法解决。于是自己捣鼓。各种心酸,终于解决了。 解决了两个问题:去掉#刷新页面时仍然能匹配到对应的路由angular代码在angular应用配置中添加:angular.module('myApp').config(f

2016-12-18 17:06:13 1557

原创 webpack初识

简介Webpack 是当下最热门的前端资源模块化管理和打包工具。它可以将许多松散的模块按照依赖和规则打包成符合生产环境部署的前端资源。还可以将按需加载的模块进行代码分隔,等到实际需要的时候再异步加载。通过 loader 的转换,任何形式的资源都可以视作模块,比如 CommonJs 模块、 AMD 模块、 ES6 模块、CSS、图片、 JSON、Coffeescript、 LESS 等。Webpack

2016-12-10 20:45:05 899

原创 browserify

Browserify是一个浏览器端代码模块化工具简介服务器端NodeJS自带模块功能,可以使用require和module.exports构建项目随着项目的增大,浏览器端任务越来越重,依赖关系越来越复杂,需要使用工具实现模块化。Browserify通过require和module.exports来导入和导出。Browserify的原理:部署时处理代码依赖,将模块打包为一个文件。存在的问题:打包为单个

2016-12-10 18:40:43 9792

原创 gulp初识

什么是gulp?Gulp是一个基于流构建系统,它能通过自动执行常见任务,比如编译预处理CSS,压缩JavaScript和刷新浏览器,来改进网站开发的过程。Gulp本身虽然不能完成很多任务,但它有大量插件可用,开发者可以访问插件页面或者在npm搜索gulpplugin就能看到。例如,有些插件可以用来执行JSHint、编译CoffeeScript,执行Mocha测试,甚至更新版本号。安装gulp尽管可以

2016-12-08 23:39:29 634

翻译 iconv.decode()导致的问题以及解决方法

https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding问题var http = require('http'), iconv = require('iconv-lite');http.get("http://website.com/", function(res) { var body = '';

2016-11-23 19:09:22 11466 1

原创 词法作用域

词法阶段  大部分语言的第一个工作阶段是词法化(也叫单词化),词法化的过程会对源代码中的字符进行检查。      而词法作用域就是定义在词法阶段的作用域。它只和写代码时将变量和块作用域写在哪里来决定的。   function foo ( a ) { var b = a; function bar( c ) { console.log( a, b, c ); } b

2016-10-26 15:06:28 521

原创 jQuery中的Ajax(全)

小结  1,基础:从load讲起,依次有get、post、getJSON、getScript、ajax  2,增强:jsonp、全局函数、jqXHR  3,高级:缓存相应,截流、数据类型转换、预过滤器、替代传输机制。  4,工具函数:serialize、serializeArray、$.param

2016-10-07 11:19:23 6750

原创 多列布局(column)

**column-fill**: auto | balance。定义多列中每一列的高度是否统一。  这个属性很奇怪。并且在浏览器中不统一。它有两个值:auto | balance。在 ie10/ie11/opera40/chrome52中测试的结果都是一样的,发现这两个属性并没有区别。在firefox49中测试,这两个属性是有区别的,其中balance是每列高度差不多(对齐),auto就自动合并成一列了,无论自己

2016-10-05 12:16:02 3456

原创 flex布局

容器的属性:flex-direction: 决定主轴的方向。默认为row。 flex-wrap: 如果一条轴线排不下,如何换行。默认为nowrap。 flex-flow: flex-direction [, flex-

2016-10-05 00:01:02 658

原创 结合豆瓣搜索结果进行分页(完整)

使用豆瓣api,得到分页结果。相当于从后台数据库获得的结果一样。所不同的是,没法事先知道页数。虽然通过请求api可以获得总页数,但由于ajax是异步的,所以对于分页一开始就要给出总页数来说,这是没有意义的。我使用了一个固定总页数65(正是搜索javascript书籍返回的总页数)。所以其他书籍是并不是65页,会出现多页或者少页的情况,这并不是bug。特点  1,全程不需要接触后台,前端独立就可以(我

2016-10-04 15:01:41 2362

原创 connect的bodyParser中间件处理文件上传

使用bodyParser  项目路径如下。其中static可以修改,但是必须和connect.static( 'static' )对应。   本例中,我们可以使用createServer的快捷方式来创建一个服务器,并将所有要用到的中间件都传给它。   var connect = require('connect'); var fs = require( 'fs' );var server =

2016-10-03 10:51:06 1972

原创 看完必会的JSONP

1、JSONP是为了解决跨域问题产生的,为了弥补AJAX的不足。AJAX请求跨域资源,Chrome下会报错: 2、但是对于img、ifame、script等,我们发现,在它们的src中引用其他域的资源的时候,是可以加载的(对于iframe,如果跨域,虽然可以加载,但是无法进行DOM操作,postMessage可以解决)。3,JSONP正式基于上述的技术4,上述的函数就是我们常说的callback

2016-10-02 20:10:11 1356

原创 node创建客户端与服务器端(HTTP)

Transfer-Encoding: chunked  在我用telnet登录服务器的时候,服务器返回信息如下。   其中,我们看到这样一条相应–Transfer-Encoding: chunked。Transfer-Encoding头信息的默认值是chunked,主要的原因是Node天生的异步机制,这样响应就可以逐步产生。      发送数据块的方式在涉及文件系统的情况下会非常高效。We

2016-10-01 02:17:37 4178

原创 Telnet创建HTTP请求

创建node服务器require( 'http' ).createServer( function ( req, res ) { res.writeHead( 200 ); res.end( 'Hello world' );}).listen( 3000 );cmd中使用telnet登录如图:      回车后如图:首先看到到的是最上面title变成了Telnet 127.

2016-09-29 22:43:33 2232 1

原创 telnet到web服务器的聊天程序

Telnet  Telnet是位于OSI模型的第7层—应用层上的一种协议,是一个通过创建虚拟终端提供连接到远程主机终端仿真的TCP/IP协议。在SSH出现前,它作为一种控制远程计算机的方式被广泛使用,如远程服务器管理。   虽然Telnet较为简单实用也很方便,但是在格外注重安全的现代网络技术中,Telnet并不被重用。原因在于Telnet是一个明文传送协议,它将用户的所有内容,包括用户名和密码都

2016-09-28 19:25:12 2157

原创 原生Ajax那些事儿

不得不说的一点是,我们如果要定期的获取服务器端的数据,那么必须使用一个定时器,每隔一定时间发送一个请求过去。这是ajax的弊端就显露出来了。每次发送请求- ->接受数据- - >再次发送请求...如此循环,每个请求都带有相同的头部信息,可能数据相对头部信息来说微不足道,但正是这些数据是我们所需要的。服务器端不停地响应请求,这就造成了资源浪费。所以出现了轮询技术(并未从根本上解决问题),和H5中的webSocket(以

2016-09-23 10:35:01 6456

原创 PHP连接数据库

对于mysql_connect()、mysql_query()、mysql_fetch_assoc()、mysql_close()等方法,由于文档上注明:本扩展自 PHP 5.5.0 起已废弃,并在将来会被移除。应使用xx扩展来替换之。所以下面用的都是mysqli_xx。      有两个php文件,分别是配置文件config.php,和处理文件demo.php。

2016-09-18 23:33:09 450

原创 PHP文件(图像)上传

PHP上传配置  有一些配置指令可用于精细地调节PHP的文件上传功能。这些指令用来确定是否启用PHP的文件上传、可允许的最大上传文件大小、可允许的最大脚本内存分配和其他各种重要的资源。

2016-09-16 16:09:55 397

原创 下拉菜单

class="input-group-btn"样式有相对定位,设为table-cell元素(与后面元素连接起来)…。 类似的是,在下拉菜单中我们使用class="dropdown"。它的样式只有一个相对定位。这个相对定位了它是为表单菜单需要显示的内容class="dropdown-menu"准备的。 它是绝对定位。所以它可以用class="pull-left/dropdown-menu

2016-09-09 23:53:08 857

原创 表单

bootstrap中的表单 "form-horizontal","form-inline"都是表单组最外层的标签。 一个表单组以"form-group"作为父元素。类似的还有"input-group","button-group"等。  验证样式有"has-error"...

2016-09-06 21:35:10 1399

原创 数据绑定

AngularJS中的数据绑定简介    在一些传统框架中,控制器将多个模型中的数据和模板组合在一起形成视图,并将其提供给用户。这种组合形成一种单向视图。如果没有其他JS组件,视图只会体现它渲染时的模型暴露的数据。  在AngularJS中,它通过实时模板来代替视图,而不是将数据合并进模板后再更新DOM。任何一个视图组件中的值都是动态替换的。这个功能可以说是AngularJS中最重要的功能之一。

2016-09-04 00:34:53 668 1

原创 jQuery中的高度与定位

jQuery中的高度与定位(offset(),position())  我们知道,高度或者宽度是由外边距(margin)、边框(border)、元素样式定义的高度或宽度(height/width)、内边距(padding)组成的。height()与outerHeight()的不同  height():Get the current computed height for the first elem

2016-08-29 20:57:58 1797

原创 Javascript中的作用域

Javascript中的作用域2、理解作用域引擎   负责整个编译以及执行过程。编译器   引擎的好朋友之一,负责语法分析和代码生成等脏活累活。作用域   引擎的另一个好朋友,负责收集和维护所有变量,并实施一套非常严格的规则,以保证当前代码(作用域)对变量的访问权限。

2016-08-28 23:40:43 843

原创 关于cookie和Storage

Cookie是在HTTP协议下 ,服务器或脚本可以维护客户工作站上信息的一种方式 。Cookie是由Web服务器保存在用户浏览器(客户端)上的小文本文件,它可以包含有关用户的信息 。无论何时用户链接到服务器 , Web 站点都可以访问 Cookie信息。 目前有些 Cookie是临时的 , 有些则是持续的。临时的 Cookie只在浏览器上保存一段规定的时间,一旦超过规定的时间, 该Cookie就会被系统清除。 持续的 Cookie则保存在用户的 Cookie文件中, 下一次用户返回时, 仍然可以对它

2016-08-17 19:34:11 2760

原创 关于java中的static

/*static的特点:1,static是一个修饰符,用于修饰成员。2,static修饰的成员被所有的对象所共享。3,static优先于对象存在,因为static的成员随着类的加载就已经存在了。 4,static修饰的成员多了一种调用方式,就可以直接被类名所调用 。 类名.静态成员 。5,static修饰的数据是共享数据,对象中的存储的是特有数据。成员变量和静态变量的区别?1,两个变量的生命周期不

2015-12-03 01:00:30 515

转载 关于 错误: 编码GBK的不可映射字符 的解决方法

原文链接:http://zhidao.baidu.com/link?url=zS16DyM3AF-3Blu_FfoVwv53jDWHVPMpAHLjD31V7mq7f6xpx6r6iSFiPTr5_7J6m3SK9XVUKY6-_uvY9z6Fjahttp://blog.sina.com.cn/s/blog_74a86d5201019ka8.html①这是因为:由于JDK是国际版的

2015-11-17 12:16:47 8224

原创 运算符-java

1、    byte b1=3;byte b2=7;byte b;b = b1 + b2;  编译时出现错误,因为b1和b2都是byte变量,两个相加仍是变量,可能会超出byte范围。编译器并不会检查它们的值。下面这样就可以。其实在第一次b1=3的时候,因为3是整型,底层机制会检查3是否在b1的范围内,在范围内的话就赋值成功,所以b1=3这是可以的。

2015-11-16 00:27:23 685

原创 接受一个整数输入,显示所有小于或等于该数的素数

//第一种方法#include int main(void){ int num; int i, j; scanf("%d", &num); for(i = 2; i <= num; i++) { for(j =2 ;j < i; j++) {

2015-08-15 08:12:25 4528 1

原创 printf()参数传递

//详见c primer plus 5th 中文 p75 参数传递#include int main(void){    float n1 = 3.0;    double n2 = 3.0;    long n3 = 2000000000;    long n4 = 1234567890;    long n5, n6;    printf("

2015-08-05 17:10:29 1173

转载 浮点数在计算机中存储方式

转自http://blog.csdn.net/wuna66320/article/details/1691734#commentshttp://cruih.iteye.com/blog/1278021C语言和C#语言中,对于浮点类型的数据采用单精度类型(float)和双精度类型(double)来存储,float数据占用32bit, double数据占用64bit

2015-08-04 10:51:32 2272

原创 char

#include int main(void){    char beep = 7;    printf("%c, %d", beep, beep);    return 0;} //输出结果是 , 7  和一声蜂鸣#include int main(void){

2015-08-02 23:22:09 618

转载 C语言中EOF与Ctrl+Z

希望本文可以对初学C的朋友提供一点帮助,也希望能和其他朋友进行交流。其中理解不对的地方若能得到指正和建议,本人将不胜感激大师级经典的著作,要字斟句酌的去读,去理解。以前在看K&R的The C Programming Language(SecondEdition)第1.5节的字符输入/输出,被getchar()和EOF所迷惑了。可能主要还是由于没有搞清楚getch

2015-07-26 23:11:57 14155 1

Zeta Telnet

简单方便的Zeta Telnet。

2016-09-28

HTML5程序设计第二版源码

HTML5程序设计第二版源码,非第一版。 说明:由于原文件超过60MB限制,其中99%以上的空间都是被第四章的video部分占用。无法压缩到60MB一下。 所以我删除了第四章的一个Intermission-Walk-in.ogv文件。它有替换的mp4版本,不影响使用。

2016-07-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除