随笔分类 - WEB前端
摘要:发布时间 2004-09-16 10:50:00 JavaScript中为String对象添加 trim() 方法 //自己动手为string添加trim String.prototype.trim = function(){return this.replace(/^\s+|\s+$/g,"");
阅读全文
摘要:发布时间 2012-04-11 17:24:42 有g参数的正则表达式: var kk=//w/w/g; var kk= new RegExp( "//w//w" , "g" ); 如果正则表达式有指定g参数全局匹配 , 则每次test()是依次获得下一个匹配。举例说明: var s= "AABBC
阅读全文
摘要:发布时间 2010-05-26 16:52:00 JavaScript实现CRC32函数 该函数只处理ASCII字符,如需处理中文,需要先编码。 (function() { var table = "00000000 77073096 EE0E612C 990951BA 076DC419 706AF
阅读全文
摘要:发布时间 2012-09-03 11:31:55 对于ASCII字符,这三个函数的作用都是将字符转换成百分比编码(Percent-encoding ),区别是各自排除编码的字符不同:escape() will not encode: @*/+encodeURI() will not encode:
阅读全文
摘要:发布时间 2008-11-17 23:16:00 先贴出我写的javascript代码,后面有使用参考。 //by cuixiping, 2008-11-17 Date.prototype.dateAdd = function(interval,number) { var d = this; var
阅读全文
摘要:发布时间 2010-01-23 22:59:00 setTimeout与setInterval是window对象的两个非常神奇方法,用于实现定时或延时调用一个函数或一段代码。(新手可能认为setTimeout与setInterval是javascript函数,这是错误的。新手容易将javascrip
阅读全文
摘要:发布时间 2013-05-30 00:50:17 密码强度的提示大家都不陌生,网站所有者往往期望用户输入高强度的密码来保证更好的安全性,但是用户往往是懒惰的,密码复杂了很快会忘掉,这是个矛盾,于是有的网站是强制要求用户必需设置高强度的密码,有的网站则是对低强度的密码给予警告提醒。 那么能否让用户非常
阅读全文
摘要:发布时间 2011-01-24 19:52:00 假设有一个函数A是这样的: function A(){ } 可能的调用方式有: new A(); A(); A.a=A; A.a(); A.prototype.b=A; b=new A(); b.b(); A.prototype.c=A; A.pro
阅读全文
摘要:发布时间 2012-05-16 14:42:18 一个应用场景是,点击一条路径,显示该路径的控制点。因为有transform变形( 平移、缩放、倾斜、旋转等变换),所以获取变形后的新坐标需要计算。 纯数学的方法,就是用2D变换矩阵的一些公式去运算,过程稍微有点复杂。 不过好在SVG已经提供了丰富的A
阅读全文
摘要:发布时间 2012-05-14 17:33:50 灵感源于一不小心挖了一个陈年老贴etherdream发的《【分享】魔兽技能冷却效果(希望能有更好的思路)》的坟,看他的代码太长(约200行),于是自己动手写了一个,也就20多行代码,效果也还不错,点这里看DEMO(1)。 etherdream的原理是
阅读全文
摘要:发布时间 2011-10-14 03:11:15 如果在HTML5支持好的浏览器中,可以看到用svg绘制的路径线。 在所有浏览器中,均可以看到一个小方块沿着贝塞尔曲线路径来回运动。 效果图:丢失 主要代码: <div style="position:absolute;left:0;top:0;wid
阅读全文
摘要:发布时间 2013-09-27 21:52:45 制表符常用来表示代码缩进,制表符的宽度的设置,对于任何一款代码编辑器来说都是很必须的功能。 在浏览器中展示代码的时候,通常我们只能将TAB替换为4个空格来显示,因为默认的TAB太宽了。 W3C的CSS3草案中已有关于TAB宽度的设定,在这里。 高兴的
阅读全文
摘要:发布时间 2009-03-07 11:54:00 这里简短记录一下WEB前端开发中的性能调试工具。 当然,这些工具本身的功能一般都超出了性能调试的范围,有很多其它的好功能,记录下工具的名称随时可以方便搜索了。还有两款是易用性检测工具,严格的讲不属于性能调试工具。 1. Firebug + YSlow
阅读全文
摘要:发布时间 2010-11-09 13:31:00 测试: http://liuliu.me/detect/detect.html (该网址已失效,请自行下载源码测试) 源码:https://github.com/liuliu/ccv/tree/unstable/js 浏览器要求:支持Canvas的浏
阅读全文
摘要:发布时间 2012-08-27 10:52:31 封装了一个ajax多文件上传,功能就是选择多个文件,用ajax上传。 调用方式也很简单,写一个json对象做为参数配置,设置要上传的服务端url以及选择文件和上传完成等的事件处理函数,new一个AjaxUploadX对象,调用selectFiles方
阅读全文
摘要:发布时间 2010-09-09 21:31:00 看第一段代码,这是能正常工作的,画出一条黑线: <canvas id="myCanvas" width="32766" height="100"></canvas> <script> var c=document.getElementById("my
阅读全文
摘要:发布时间 2008-10-15 22:16:00 最常见的做法是采用正则表达式替换的方法,将特殊字符如 < > & 等进行替换,htmlencode的时候这样替换还比较容易,但发过来htmldecode的时候就不一定好用了,因为需要反转的情况很多,出了常见的<>&以外,还有&nb
阅读全文
摘要:发布时间 2008-09-13 22:16:00 var a=0,b=-0; // +0 and -0 alert(a b); //true alert(1/a 1/b); //false 遇到这个问题,竟一时想不出答案。 这是我看了这篇A Collection of JavaScript Gotc
阅读全文
摘要:发布时间 2012-05-23 16:48:08 现有这样一段HTML: <div id="div1"> <span class="a">a1</span> <span class="b">b1</span> <span class="c">c1</span> <div id="div2"> <sp
阅读全文
摘要:发布时间 2012-10-08 18:01:59 用了很长一段时间的JSLint来做js质量验证工具,但是总有些感觉不爽的地方,JSLint对代码的要求有些不尽合理,所以有了JSHint的诞生,JSHint也是从JSLint分叉(fork)出来的,但是更加人性化了,使用过后,觉得比JSLint要爽多
阅读全文