- 博客(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
HTML5程序设计第二版源码
2016-07-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人