随笔分类 -  js/jquery

1 2 下一页

QQ空间应用开发笔记
摘要:好吧,花费了一个月没有周末的日子,熬了N个通宵,一个小产品总算完工了。。。(本周票房)说说自己当初的想法吧,每个人都有一个创业梦想,QQ空间应用中最近的十幅图、十幅囧图、十幅搞笑图什么的相信大家也都看到过或者玩过,最近特别火爆,所以勾起了我开发QQ空间应用的兴趣。一个周末开始,朋友三个便开始着手开发第一个应用,大家讨论做个票房轻应用,于是就定下名来“本周票房”,寓意就是每周给那些爱看电影的小伙伴们提供一些最新的票房信息。我和另一个负责前端,另一个负责PHP后台这块儿。第一个周末便通宵了两个晚上才出了个雏形,开始以为前端这块很简单,但后来就发现不是这么一回事,要考虑前端性能,组件可扩展性,与后端 阅读全文

posted @ 2013-11-18 09:47 摩帆士 阅读(657) 评论(1) 推荐(2)

前端开发经验总结
摘要:一、return false 当你每次调用”return false“的时候,它实际上做了3件事情:event.preventDefault();event.stopPropagation();停止回调函数执行并立即返回。 阅读全文

posted @ 2013-08-08 17:56 摩帆士 阅读(243) 评论(0) 推荐(0)

开发组件的原则
摘要:从HTML CSSJS三层分析基于交互模型的思考路径先整体再局部 阅读全文

posted @ 2013-08-07 16:40 摩帆士 阅读(320) 评论(0) 推荐(0)

jQuery deferred对象API详解
摘要:jQuery在1.5开始引入deferred(延迟),简单说,deferred对象就是jQuery的回调函数解决方案。jQuery1.5中,Deferred对象提供一种方式来注册多个回调,添加到自已管理的回调队列中,调用适当的回调队列,并转达同步或异步函数的成功或失败状态。deferred对象有三种执行状态:未完成(pending),已完成(resolved)和已失败(rejected)API概览:123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051deferr 阅读全文

posted @ 2013-08-06 15:31 摩帆士 阅读(465) 评论(0) 推荐(0)

prototype、constructor那点事儿
摘要:一、什么是原型(prototype) 1、prototype本质上还是一个JavaScript对象; 2、每个函数都有一个默认的prototype属性; 3、通过prototype我们可以扩展Javascript的内建对象如果这个函数被用在创建自定义对象的场景中,我们称这个函数为构造函数。 比如:代码// 构造函数 function Person(name) { this.name = name; } // 定义Person的原型,原型中的属性可以被自定义对象引用 Person.prototype = {getName:function () { ... 阅读全文

posted @ 2013-08-02 09:47 摩帆士 阅读(464) 评论(0) 推荐(1)

9 个超实用的 jQuery 代码片段
摘要:1.jQuery平滑回到顶端效果Javascript代码$(document).ready(function() { $("a.topLink").click(function() { $("html, body").animate({ scrollTop: $($(this).attr("href")).offset().top + "px" }, { duration: 500, easing: "swing" }); retu... 阅读全文

posted @ 2013-07-26 13:15 摩帆士 阅读(395) 评论(0) 推荐(0)

JS OO库的选择
摘要:一、原型继承 JavaScript使用了一种独特的对象创建和继承的方式,称为原型继承(prototypal inheritance)。这一方法背后的前提(相对大多数程序员所熟悉的传统的类/对象方案而言)是,一个对象的构造器能够从另一个对象中继承方法,建立起一个原型对象,所有的新的对象都将从这个原型创建。 这整个过程由prototype属性(存在于每一个函数中,因为任何函数都可以是一个构造器)促成。 使得这种形式的继承特别难以掌握的是,原型并不从其它的原型或者其它的构造器继承属性,而是从实际的对象中继承。代码://创建Person对象的构造器function Person( name ) ... 阅读全文

posted @ 2013-06-26 20:25 摩帆士 阅读(367) 评论(0) 推荐(0)

Dean Edwards -- Base.js(译)
摘要:我是一个由衷的面向对象的程序员,并且JavaScript支持基于继承的原型(prototype)。不幸的是这会导致冗长的类定义:functionAnimal(name){};Animal.prototype.eat=function(){};Animal.prototype.say=function(message){我希望能有一个良好的关于JavaScript OO的基础类:我希望能简单的创建类而没有MyClass.prototype 的冗余代码。我希望有能够直接访问被重载函数的函数重载 (就像 Java的super)我希望在原型构造阶段能够避免调用类的构造方法。我希望能简单的添加静态的(类 阅读全文

posted @ 2013-06-24 21:06 摩帆士 阅读(1023) 评论(0) 推荐(0)

Jquery中find、filter等几种用法的差异
摘要:1.filter:.filter( selector ).filter( function(index) ).filter( element ).filter( jQuery object )和find区别:基本是find是对它的子集的操作,而filter是对自身集合元素(平级元素)的操作·find 函数是在当前对象集合的子元素中进行查询;·filter 函数是对当前对象集合进行过滤, 利用过滤条件缩小范围;·find 函数的参数是 jQuery 选择器表达式;·filter 的参数也是选择器表达式, 但可以有多个条件, 用逗号分隔(逻辑或关系); 阅读全文

posted @ 2013-06-24 14:36 摩帆士 阅读(1012) 评论(0) 推荐(0)

jQuery extend扩展
摘要:jQuery源码中的extend扩展:123jQuery.extend = jQuery.fn.extend = function() {...};我们可以用$.extend去扩展自定义的对象,实现方式:1,通过$.extend扩展 /** * 扩展对象,override参数的作用是是否覆盖第一个对象中的已有属性,true时覆盖,false时不覆盖. * @param {Object} * @param {Boolean} * @return {Object} */ $.extend = function (destination, source, o... 阅读全文

posted @ 2013-06-15 16:03 摩帆士 阅读(335) 评论(0) 推荐(0)

类似于jquery的Mole库架构分析
摘要:仿jquery写的一个东东~以下是jQuery 1.6.1 代码片段123456789101112131415varjQuery = function( selector, context ) {// The jQuery object is actually just the init constructor 'enhanced'returnnewjQuery.fn.init( selector, context, rootjQuery );},...jQuery.fn = jQuery.prototype = {constructor: jQuery,init: funct 阅读全文

posted @ 2013-06-15 14:27 摩帆士 阅读(294) 评论(0) 推荐(0)

JQuery中调用html()需要去掉空格
摘要:IE6/78中,弹出字符串的长度是4,即忽略了空格。IE9/Firefox/Safari/Chrome/Opera中,弹出则是7,即没有忽略空格。这时候拿.html()的返回值作为代码分支的条件明显在非IE浏览器中会出错。如果非要使用元素的html内容作为判断条件,解决办法很简单:1,写html时去掉空格2,调用html()方法后再调用trim(),如var str = $('#main').html().trim(); 阅读全文

posted @ 2013-06-15 14:00 摩帆士 阅读(497) 评论(0) 推荐(0)

限制数量不可为0,且不大于1000
摘要:限制数量不可为0,且不大于1000 /^([1-9]\d{0,2}|1000)$/ 阅读全文

posted @ 2013-06-13 15:22 摩帆士 阅读(201) 评论(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 摩帆士 阅读(751) 评论(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 摩帆士 阅读(276) 评论(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 摩帆士 阅读(298) 评论(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 摩帆士 阅读(236) 评论(0) 推荐(0)

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

posted @ 2013-06-05 16:45 摩帆士 阅读(197) 评论(0) 推荐(0)

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

posted @ 2013-06-05 16:35 摩帆士 阅读(218) 评论(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 摩帆士 阅读(220) 评论(0) 推荐(0)

1 2 下一页