博客:css
1.大牛博客:每一篇博客都須要仔細的看。http://blog.csdn.net/hongchh/article/details/54744318html
2.layui:的做者 賢心的博客:http://sentsin.com/和 GIt倉庫:https://github.com/sentsin前端
3.真的是我輩的楷模。 http://sentsin.com/about.htmlvue
4. echarts2升級到echarts3 http://www.cnblogs.com/coding4/p/6726338.htmljquery
5. eslint: http://www.cnblogs.com/coding4/p/6744082.htmlgit
6.wos老師的全套課程。https://chuanke.baidu.com/?mod=school&act=show&do=course&sid=5467713es6
7.須要熟悉的一個博客:http://www.cnblogs.com/lhweb15/p/5660609.htmlgithub
8.一些必須仔細研讀的網站。 http://www.cnblogs.com/coding4/p/6784444.htmlweb
9.微信開發必須看的圈套博客:http://www.cnblogs.com/txw1958/p/weixin-payment.htmljson
10.這個博主的值得所有看一下。http://www.cnblogs.com/dtdxrk/p/3797028.html
11.http://www.aaa-cg.com.cn/xue/webqianduan/626.html?hxy-qqqun-20170508
12.零點代碼備份。http://www.cnblogs.com/coding4/p/6830761.html
13.效果網站:
14.一個大牛總結的原生js的總結。
http://www.jianshu.com/p/46b4fdcbe2cc
15.一個 js原生之scrollTop、offsetHeight和offsetTop等屬性用法詳解
http://www.cnblogs.com/coding4/p/6893091.html
17.IE67的冷知識。
18.loadshjs
http://lodash.think2011.net/countBy
19.underscorejs
http://www.bootcss.com/p/underscore/
20.
lazyload.js使用方法
1.jquery的on方法,第二個參數,是子元素,而且必須有元素div或者a之類的
$("body").on("click",'div#layui-layer1a.tagBox-remove',function(){
debugger;
});
2.json通過後臺處理後和前臺就是不一樣,必須通過轉爲字符串,再轉爲對象。
3.原生js和jquery的獲取index的方法。
4.
http://www.cnblogs.com/ganmy/p/6052713.html
5.js的代碼最好不要用try,catch致使你的錯誤直接不見了。上線的時候添加,沒上線就去掉。
6.submit組織提交return false 竟然比event.preventDefault.
7.網上的博客關於 iframe的高度的問題。 http://www.jb51.net/web/28937.html
頁面加載的時候一但肯定了iframe的告訴好比height:500px,或者height:100%這個時候,咱們在改變height就不行了。
8.若是你的line-height不爲1的話,會致使相鄰圖片的vertical-align的middle有時候失效,有時候多聯繫一下。
9.background:url('.jpg')這樣子的的圖片是撐不起div的高度的。
10.本身作feels遇到的問題。
我感受下邊的幾個都說有問題的。
11。mouseover mouseout
12.
記住大姐遇到的那個問題,若是在建立以前調用方法,可是方法中渲染的數據不行,
p標籤裏邊添加div是不行的
13.這個選擇器。
$(":radio[name='isExtreme'][value='" + data.isExtreme + "']").prop("checked", "checked");
14.array的filter與map的區別和聯繫哈。
15.原生也有相似trigger的效果
16.`這個奇特的用法。
17.一些簡單的es6用法。谷歌瀏覽器已經開始支持了。
18.js產生任意的一個字母,包含大小寫。
String.fromCharCode(65+Math.ceil(Math.random()*57))
19.
20.split多個切割符。
var ss = "asdf?asf&&&asf&adsf"
window.location.href.split(/[?&]/)
21.網頁被捲去的告訴。
http://www.cnblogs.com/lxg0/p/5877724.html
22.求數組的最大和最小的方法。
http://www.cnblogs.com/cssfirefly/p/5563358.html
23.
24.
jquery的each 和map參數相反
25.跳出兩層for循環。
26.js這樣子寫的時候,你必定要明白,特別注意[1]和['1']的區別,都轉成一樣的。
27.es6的寫法哈哈
28.登陸界面。
必需要注意在input標籤中添加,name="username" form
還有提交按鈕必須用submit(你能夠阻止submit的默認事件的發生)
29.
/*1、防止高頻調用的debounce函數
這個debounce函數對於那些執行事件驅動的任務來講是必不可少的提升性能的函數。若是你在使用scroll,resize,key*等事件觸發執行任務時不使用降頻函數,也行你就犯了重大的錯誤。下面這個降頻函數debounce能讓你的代碼變的高效*/
//debounce函數
//返回一個函數
function debounce(func,wait,immediate){
var timeout;
console.log('haha12');
return function(){
console.log('haha1');
var context = this,args = arguments;
var later = function(){
timeout = null;
if(!immediate){
func.apply(context,args);
}
}
var callNow = immediate && !timeout;
clearTimeout(timeout);
timeout = setTimeout(later,wait);
if(callNow) func.apply(context,args);
}
}
var myEfficientFn = debounce(function(){
alert(111);
},1000);
window.addEventListener('resize',myEfficientFn);
/*myEfficientFn();
myEfficientFn();*/
/*這個debounce函數在給定的時間間隔內只容許你提供的回調函數執行一次,以此下降它的執行頻率。當遇到高頻觸發的事件時,這樣的限制顯得尤其重要。*/
/*
2、禁止重複調用、只容許執行一次的once函數
不少時候,咱們只但願某種動做只能執行一次,就像是咱們使用onload來限定只在加載完成時執行一次。下面這個函數就能讓你的操做執行一次後就不會再重複執行。
*/
function once(fn,context){
var result;
return function(){
if(fn){
result = fn.apply(context || this,arguments);
fn = null;
}
return result;
}
}
var canOnlyFireOnce = once(function(){
console.log('Fired');
});
canOnlyFireOnce();//Fired
canOnlyFireOnce();//undefined
/*
3、獲取一個連接的絕對地址getAbsoluteUrl
獲取連接的絕對地址並不像你想象的那麼簡單。下面就是一個很是實用的函數,能根據你輸入的相對地址,獲取絕對地址:
*/
var getAbsoluteUrl = (function(){
var a;
return function(url){
if(!a){
a = document.createElement('a');
a.href = url;
return a.href;
}
}
})()
getAbsoluteUrl('/something');
/*
4、用JavaScript建立新的CSS規則insertRule
有時候咱們會使用一個CSS選擇器(好比document.querySelectorAll)來獲取一個 NodeList ,而後給它們每一個依次修改樣式。其實這並非一種高效的作法,高效的作法是用JavaScript新建一段CSS樣式規則
*/
Sheet = (function(){
var style = document.createElement('style');
style.setAttribute('media','screen');
style.appendChild(document.createTextNode(''));
document.head.appendChild(style);
return function(rule){
style.sheet.insertRule(rule,style.sheet.cssRules.length);
}
})()
Sheet('.stats {position:relative;top:0px}');
/*
5、設定時間/頻率循環檢測函數
debounce函數是藉助於某個事件的觸發。但有時候並無這樣的事件可用,那咱們只能本身寫一個函數來每隔一段時間檢查一次
*/
function poll(fn,callback,err,timeout,interval){
var startTime = (new Date()).getTime();
var pi = window.setInterval(function(){
if(Math.floor(((new Date).getTime() - startTime)/1000) <=timeout){
if(fn()){
callback();
}
}else{
window.clearInterval(pi);
err();
}
},interval);
}
//這個事件沒有說怎麼用
30.寫自執行函數仍是有一點意義的,能夠定義變量。
31. js url編碼。
http://www.cnblogs.com/huzi007/p/4174519.html
32. return 關鍵字後邊不能換行。若是換行就不生效了。
33.console.log(JSON.stringify(obj));這個打印出來後能夠直接格式化。
34 filter以後並非深拷貝。