- 事件冒泡(选项卡的实现)http://jsbin.com/hecaw/1/edit
- addEventListener 实现对事件的冒泡和捕获处理,需要定义到父节点上才能生效!!如果定义到本身的话,无论你的第三个参数是true or false 都是失效的,当然这个就不是冒泡和捕获情况了jsbin
- 前端的延迟请求:1.在script标签中使用defer属性可以达到延迟加载2.可以通过html5的prefetch来使用,这个可以为将来某个页面提前加载 资料:prefetch
- 语义化标签:http://ued.ctrip.com/blog/?p=2735
- 元素(height:200px;width:200px)水平垂直居中:下面是利用定位解决居中问题,同时可以使用display:table-cell & vertial-align:middle 这两个组合来使用。
7.如何add padding char?.content{ position: absolute; left: 50%; top: 50%; margin-top:-100px; margin-left: -100px; }
- 如何add padding char?
这里char的默认值是0,这只是一个例子,当然也可以使用underscore.js的功能函数来实现:function( count, char ){ var char = char || 0; if(char == 0){ return (Math.pow(char, count )+"").substr(1); } }
可能会想到用for这种简单又粗暴的方式解决,效率当然是最高的。但维护起来成本会增加,当你把你的逻辑封装一个函数里面,时间长了就不会写一大段一大段的代码了,喜欢用框架的原因吧。function( count, chart){ var result = "", isNumber = _.isNumber(count); if( !isNumber ) return "count isn't number"; _(3).times(function(){result +=char;} return result; ) }
- 合并数字数组
var arr = [2,3,[4,6,[3,8]],12,10]; function collapseArr(arr){ var result = []; function collase(a){ for(var i=0;i<a.length;i++){ if( Object.prototype.toString.call(a[i]) == "[object Array]"){ collase(a[i]); }else{ result.push(a[i]); } } } collase(arr); return result; } console.log(collapseArr(arr))
8.字符串数组连接
var arr = ['a','b',['c','d']]; arr.join('#').split('#');//["a", "b", "c,d"]----> arr.join(',').split(',');//[结果]
- 数组去重问题!
当涉及数组的时候的很多应用都和关联数组有关,也就是含有length属性的对象!比如,jQueryArray.prototype.distinct = function(){ var self = this; var _a = this.concat().sort(); _a.sort(function(a,b){ if(a == b){ var n = self.indexOf(a); self.splice(n,1); } }); return self; };
- 如何实现下列代码:[1,2,3,4,5] to [1,2,3,4,5,1,2,3,4,5]
但是有没有想过duplicato已经有了,就是array实例的属性呢? var myFunc = typeof array.duplicato == "function" ? array.duplicato : array.constructor.prototype.duplicato; myFunc && array.myFunc();Array.prototype.duplicato = function(flag){ //flag==true -> self var length = this.length, that = flag ? this : []; for(var i=0; i<length; i++){ that[ i + length ] = flag ? this[i] : that[i] = this[i]; } return that; }
04-22
21万+
08-01