- 博客(88)
- 收藏
- 关注

转载 前端若干模板介绍对比
“模板”这个词,可能很多人第一印象是后端的技术(Smarty,Velocity等),但本文要讲的却不是后端的概念,而是前端开发中所使用到的一种技术,也就是“前端模板”技术。模板的工作原理可以简单地分成两个步骤:模板解析(翻译)和数据渲染。这两个步骤可分别部署在前端或后端来执行。如果都放在后端执行,则是像Smarty这样的后端模板,而如果都放在前端来执行,则是我们要探讨的前端模板。问题
2013-05-10 15:45:31
944

原创 hashchange实现ajax无刷新回退
hashchange,一提hash前端GG、MM们都不稀奇,但是hashchange就鲜有人知了在一次面试过程中面试官问道这么样实现ajax回退,这个问题当时闷了,下面附上具体代码,以备后用: changevar i=0, url; var show = function(num) { if (num == 0) {
2013-05-09 18:57:19
1899

原创 less用法介绍
less的语法在此就不错介绍了,参考官网 http://www.lesscss.net/less的强大主要是可以简化前端css开发流程,前端开发更加的便捷,模块划分可以更加的细致,最后压缩所有需要的less文件即可首先需要安装node,less每一个页面都有个主css入口,这个css文件是通过less文件解析而来,这个less文件@import若干个必要的le
2013-05-09 10:32:11
811

转载 node究竟是什么?
简介如果您听说过 Node,或者阅读过一些文章,宣称 Node 是多么多么的棒,那么您可能会想:“Node 究竟是什么东西?” 即便是在参阅 Node 的主页之后,您甚至可能还是 不明白 Node 为何物?Node 肯定不适合每个程序员,但它可能是某些程序员一直苦苦追寻的东西。为试图解释什么是 Node.js,本文将简要介绍一些背景信息:它要解决的问题,它如何工作,如何运行一个
2013-05-03 10:28:11
767
原创 跨域解决方案整理
1. window.domain应用场景:主域相同,子域不同;办法:请求和被请求资源同时设置window.domain为相同主域名称,请求页面创建iframe地址指向被请求页面地址,当iframe加载成功后就可以读取被请求页面内资源;2. 创建script(jsonp)原理:浏览器跨域限制不能限制加载别的域名下的js文件,所以可以通过动态创建script标签的形式在scri
2016-04-09 13:49:20
441
原创 倒计时
var remainTime = Date.parse('2016/01/01'); var minites = 1000 * 60; var hours = minites * 60; var days = hours * 24; setInterval(function () { var nowGetTime = new Date().getT
2015-03-08 16:47:15
626
原创 JSON.stringfy
if (!window.JSON) { window.JSON = { stringify: function (vContent) { if (vContent instanceof Object) { var sOutput = ''; if
2015-02-01 20:39:56
823
原创 javascript之Array
1. concat 链接两个或者多个数组,并返回数组结果。 参数可以是各种类型的,即:数字、字符串、function、Eegexp等,但是返回的绝对是一个一维数组,并且用来链接的数组不会变;2. pop 数组末尾删除一项,并且返回被删除的项,与shift相对应;3. shift 数组第一项被删除,并且被返回,与pop对应;4. push 在数组最后添加一项或者多项,并且返回
2014-12-10 16:48:45
466
原创 预防XSS
filterXSS: function (str) { if(typeof(str)!='string') return str; str=str.replace(/</g, "<"); str=str.replace(/>/g, ">"); str=str.replace(/\"/g, """); str=str.replace(/\'/g, "'")
2014-12-08 17:45:13
12227
原创 数字转换为二进制
function get2bin(num){ var bin = ""; while (num > 0) { if (num%2 != 0) { bin = "1" + bin; } else { bin = "0" + bin; }
2014-09-13 15:35:41
1883
原创 插件规范定义
/* * Support for AMD, CMD */;(function( window, document, undefined ) {(function( factory ) { "use strict"; if ( typeof define === 'function' && define.amd ) { // Define as an A
2014-08-28 10:43:32
770
转载 浏览器检测IE(6、7、8、9、10)、chrome、ff、opera、safari、iOS、android
var d = {}; d.haspointerlock = "pointerLockElement" in document || "mozPointerLockElement" in document || "webkitPointerLockElement" in document; d.isopera = ("opera" in window); d.i
2014-06-17 10:05:46
1277
原创 获取鼠标坐标
function mousePos(e){ var x,y; var e = e||window.event; return { x:e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft, y:e.clientY+document.body.scrollT
2014-04-01 11:14:11
459
原创 原生js实现class的添加和删除
function hasClass( elements,cName ){ return !!elements.className.match( new RegExp( "(\\s|^)" + cName + "(\\s|$)") ); }; function addClass( elements,cName ){ if( !hasClass( elements,cNa
2014-03-24 16:06:30
20947
原创 nodeJS模块写法入门
node本身有自己的模块,比如http、fs、path、url等等,也可以自己编写适合自己的模块。本文将介绍如何编写自己的简单的模块:我们知道每个模块对应一个js文件,这篇写一个最简单的模块hello.js, 然后在另一个js文件(main.js)中require自定义的模块。hello.jsfunction hello(name) { console.log('h
2013-09-26 10:24:08
941
原创 js获取随机颜色
收集一个函数:获取随机颜色值function getRandomColor(){ return "#"+("00000"+((Math.random()*16777215+0.5)>>0).toString(16)).slice(-6);}
2013-09-22 11:46:33
920
原创 一种判断高级浏览器的方法
高级浏览器IE9+、chrome、firefoxvar _isNewEngine = 'ddd '.trim;if(isNesEngine){}
2013-07-11 11:44:58
601
原创 iframe高度自适应
function iFrameHeight(){ var iframe = document.getElementById("iframeContain"); iframe.height = 0; try{ var bHeight = iframe.contentWindow.document.body.scrollHeig
2013-07-04 17:54:05
523
原创 web开发人员需知的web缓存知识
地址:http://www.oschina.net/news/41397/web-cache-knowledge
2013-06-16 16:23:27
451
原创 http协议详解
地址:http://www.cnblogs.com/TankXiao/archive/2012/02/13/2342672.html#statecode
2013-06-16 16:22:07
430
原创 截取location.search,转换为一个对象
截取location.search,转换为一个对象:function formatSearch(se){ if (typeof se !== "undefined") { se = se.substr(1); var arr = se.split("&"),
2013-05-31 09:27:51
2669
原创 格式化数字(123456789-->123,456,789)
show一段格式化数字的代码,主要用于money /** * 格式化数字 123456789-->123,456,789 * @param number * @return string */ function reverseNum(num){ if(typeof num !== "undefined"){
2013-05-29 14:05:33
2698
1
原创 apache各种版本msi文件下载地址
吐血啊,找半天:http://archive.apache.org/dist/httpd/binaries/win32/
2013-05-24 23:45:27
7060
1
原创 bug总结-ie7下两列布局,右侧不能设置width100%
以上代码发现在ie7下边右侧div会跑到下边去,原因就是右侧div设置了width:100%,将width:100%去掉即可;
2013-05-22 17:23:04
1580
原创 三列布局设计
方法一: Document body{ margin:0; padding:0; min-width:600px; } .main{ float:left; width:100%;
2013-05-20 16:37:41
481
原创 负margin的一些应用
最近听大家在讨论 负margin的一些应用,所以自己研究一下,下面做一些记录1. 实现左右两列布局 方法一: 左侧 右侧 方法二: 左侧 右侧 对比两种方法,第一种用到float,弊端就是应
2013-05-20 15:57:52
601
原创 序列化json的函数
var param = function(){ this.str = ""; }; param.prototype.doinit = function(obj){ if (obj &&(obj.constructor === Array || obj.constructor === Object)) {
2013-05-15 16:29:37
557
原创 show一段插件代码
$.extend($.fn, { gridtable: function(opt) { this.each(function(i) { var that = this, $that = $(this); var options = $.extend({}, $.fn.gridtable.option
2013-05-15 14:15:56
736
转载 fiddler替换服务器上文件进行本地调试
在我们前端开发的日常工作中,发现服务器上某个css/javascript文件有问题,需要修改,那真是家常便饭。通常,我们需要将文件进行修改,然后重新发布再验证,这样就很容易影响到生产环境的稳定性。更普遍的做法是,我们在开发环境中修改文件并验证,然后发布到生产环境。虽然安全,却比较繁琐。而利用Fiddler的可以修改HTTP数据的特性,我们就非常敏捷地基于生产环境修改并验证,确认后再发布。假
2013-05-13 11:10:35
6038
原创 初探EJS
前端开发在很多地方多会用到模板,常见的比如jquery的tmplateejs也是一个很简洁的模板官网:http://www.embeddedjs.com/另外附上自己写的一段代码:(function() { $.get("data/data.json",function(data) { var html = new EJS({url: "tml/clean
2013-05-10 14:13:19
1221
原创 node安装
nnd,操作一上午终于看到点效果了,根据最近官网给出的下载文件总结一下node如何安装1. 打开官网下载node安装文件download;2. 建议安装文件到d盘,安装文件自动node,并且配置系统环境变量,并且安装好npm(node package module);3. 然后 express 文件名 就可以创建一个node服务4. 但是创建好之后运行会发现会报错
2013-05-03 15:22:18
470
原创 前端禁止多次重复提交表单
表单形式: 用户名: 方法一:通过标志来注明是否是第一次提交,是:return true;否:return false;需要操作:修改form标签为具体代码: var iscommited = false; function dosubmit(){ if(!iscommited){ iscommited = true; re
2013-05-02 10:51:48
1305
转载 表单target用法(页面提交表单无刷新)
偶然有一机会发现form表单的target的用法,可以实现当前页表单提交而不进行跳转刷新。代码如下,首页在页面里准备一form表单和一iframeJava代码 "提交的action" method="post" target="theID"> ..................... "theID" style="display: none;">
2013-05-02 10:15:32
698
转载 jquery插件编写
jQuery插件的开发包括两种:一种是类级别的插件开发,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法。jQuery的全局函数就是属于jQuery命名空间的函数,另一种是对象级别的插件开发,即给jQuery对象添加方法。下面就两种函数的开发做详细的说明。1、类级别的插件开发类级别的插件开发最直接的理解就是给jQuery类添加类方法,可以理解为添加静态方法。典型的例
2013-04-24 17:41:26
576
原创 对象深拷贝和浅拷贝
function extendCopy(p) { var c = {}; for (var i in p) { c[i] = p[i]; } c.uber = p; return c; }但是,这样的拷贝有一个问题。那就是,如果父对象的属性等于数组或另一个对象,那么实际
2013-04-16 12:38:03
577
原创 数组-去掉重复内容
Array.prototype.unip = function () { var temp = {}, len = this.length; for (var i = 0; i if (typeof temp[this[i]] == "undefined") { temp[t
2013-04-15 10:21:53
526
原创 css-元素水平、竖直居中
一、水平居中1.文本图片水平居中给父级元素设置text-align:center;2.确定宽度的块级元素居中设置自身margin-left:auto;margin-right:auto;别忘了设置自身宽度;3.不确定宽度的块级元素的居中(1)用table帮助实现不确定宽度块级元素居中块级元素设置table元素margin-left:auto;margin-right
2013-03-16 22:15:07
14740
原创 js-获取鼠标光标相对于整个页面的当前位置
*{margin:0;padding:0;} function getEvent(e) { return e || window.event; } function getX(e) { var e = getEve
2013-03-16 21:29:21
2084
原创 javascript事件模型解析
在各种浏览器中存在三种事件模型:原始事件模型( original event model),DOM2事件模型,IE事件模型.其中原始的事件模型被所有浏览器所支持,而DOM2中所定义的事件模型目前被除了IE以外的所有主流浏览器支持.1.原始事件模型其事件类型:分为"输入事件(如onclicki)"和"语义事件(如onsubmit)"事件程序的注册可以以下几种方式:
2013-03-15 16:08:37
512
转载 png gif jpg图片区别
PNG-8: 256色PNG的别名,无损格式,体积最小,但最多只支持256色。和 gif 有一些相似之处,模式都是索引颜色,只支持像素级的纯透明,不支持 alpha 透明。我们通常说的“IE6 不支持 PNG 透明”,是指不支持 PNG-24 的透明(将透明区域显示为灰色)。注:IE6以下的浏览器支持PNG8的索引透明,但图片必须为全透明,半透明的png8在浏览器下显示为全透明。
2013-03-11 16:36:29
1778
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人