限制数量不可为0,且不大于1000

摘要: 限制数量不可为0,且不大于1000 /^([1-9]\d{0,2}|1000)$/ 阅读全文
posted @ 2013-06-13 15:22 摩帆士 阅读(174) 评论(0) 推荐(0) 编辑

chrome下不支持select里面的option单击事件!

摘要: <tr><td><label><i>*</i> 发票需求:</label><select id="iNeed" class="in-s" name=""><option value="" id="0">请选择上级公司</option><option value="" id="1">好旺角集团</option><optio 阅读全文
posted @ 2013-06-09 15:50 摩帆士 阅读(725) 评论(0) 推荐(0) 编辑

实现自适应宽度圆角按钮的方法

摘要: html代码的结构其实说起来也不难,首先做一个足够长度的图片,然后通过设置背景图片,让父元素显示按钮的左部,子元素显示按钮的右部,这样就可以随着不同的宽度显示完整的按钮。关键代码:a.reg-btn, a.reg-btn span { background: url("/images/regist/bg-reg-btn.gif") no-repeat;}a.reg-btn{ padding-left:3px; background-position: 0 -100px;}a.reg-btn span{ background-position: right -100px;.. 阅读全文
posted @ 2013-06-08 16:14 摩帆士 阅读(276) 评论(0) 推荐(0) 编辑

jQuery分析(取DOM元素)

摘要: 使用过Prototype.js的同学知道$(xx)调用后返回的是HTMLElement或其集合。jQuery的$调用后想要获取DOM元素可以使用get方法,如下?12// 方式1$('div').get(1); // 获取页面中第二个div当然,也可以使用数组索引方式获取?12// 方式2$('div')[1]; // 获取页面中第二个div上面两种方式都可以获取某一个特定的DOM元素,而获取DOM元素集合却要使用toArray方法?1$('div').toArray(); // 返回页面中所有的div,依次放入数组中看看get方法的源码?123 阅读全文
posted @ 2013-06-05 23:40 摩帆士 阅读(248) 评论(0) 推荐(0) 编辑

仿jQuery中each方法实现

摘要: 这篇将分析下jQuery.each及this.each方法。看看他们如何与jQuery.extend一起扩展jQuery库。部分源码如下?12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455jQuery.fn = jQuery.prototype = {...// Execute a callback for every element in the matched set.// (You can seed the arguments with 阅读全文
posted @ 2013-06-05 23:30 摩帆士 阅读(279) 评论(0) 推荐(0) 编辑

jQuery分析(缓存数据)

摘要: 很多同学在项目中都喜欢将数据存储在HTMLElement属性上,如?1234<divdata="some data">Test</div><script>div.getAttribute('data'); // some data</script>给页面中div添加了自定义属性“data”及值“some data”。后续JS代码中使用getAttribute获取。jQuery从1.2.3开始提供了data/removeData方法用来存储/删除数据。1.6.1代码片段?123456789jQuery.exten 阅读全文
posted @ 2013-06-05 23:15 摩帆士 阅读(215) 评论(0) 推荐(0) 编辑

Javascript模块化编程(二):require.js的用法

摘要: 我采用的是一个非常流行的库require.js。一、为什么要用require.js?最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了。后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载。下面的网页代码,相信很多人都见过。 这段代码依次加载多个js文件。这样的写法有很大的缺点。首先,加载的时候,浏览器会停止网页渲染,加载文件越多,网页失去响应的时间就会越长;其次,由于js文件之间存在依赖关系,因此必须严格保证加载顺序(比如上例的1.js要在2.js的前面),依赖性最大的模块一定要放到最后加载,当依赖关系很复杂的时候,代码的编写... 阅读全文
posted @ 2013-06-05 16:45 摩帆士 阅读(177) 评论(0) 推荐(0) 编辑

Javascript模块化编程:AMD规范

摘要: 一、模块的规范先想一想,为什么模块很重要?因为有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块。但是,这样做有一个前提,那就是大家必须以同样的方式编写模块,否则你有你的写法,我有我的写法,岂不是乱了套!考虑到Javascript模块现在还没有官方规范,这一点就更重要了。目前,通行的Javascript模块规范共有两种:CommonJS和AMD。我主要介绍AMD,但是要先从CommonJS讲起。二、CommonJS2009年,美国程序员Ryan Dahl创造了node.js项目,将javascript语言用于服务器端编程。这标志"Javascript模块化编程& 阅读全文
posted @ 2013-06-05 16:35 摩帆士 阅读(204) 评论(0) 推荐(0) 编辑

字符串转换成JSON

摘要: 利用Ajax的项目开发过程中,经常需要将JSON格式的字符串返回到前端,前端解析成JS对象(JSON )。ECMA-262(E3) 中没有将JSON概念写到标准中,但在 ECMA-262(E5) 中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法。1,eval方式解析?1234functionstrToJson(str){varjson = eval('('+ str + ')');returnjson;}2,new Function形式?1234functionstrToJson(str){varjson = (newFuncti 阅读全文
posted @ 2013-06-05 15:46 摩帆士 阅读(197) 评论(0) 推荐(0) 编辑

Array.prototype.slice.call

摘要: 在研究某个框架源码的时候,看到的。查了下资料,1.两个部分,一个是String.slice()slice( ) returns a string containing a slice, or substring, of string. It does not modify string。slice()返回一个子片段,对原先的string没有影响,还可以用负数当参数。Example://fromjavascript-thedefinitiveGuide5thEditionvars="abcdefg";s.slice(0,4)//Returns"abcd"s 阅读全文
posted @ 2013-06-05 15:37 摩帆士 阅读(227) 评论(0) 推荐(0) 编辑