- seo針對搜索引擎優(yōu)化
搜索引擎在檢測網(wǎng)站訪問數(shù)量上升快速時冬阳,就會收納進(jìn)它的索引庫中党饮。
其中title就是搜索引擎展示的內(nèi)容肝陪,語義化標(biāo)簽和良好的結(jié)構(gòu)在搜索引擎爬你的頁面時都會方便很多,對你的頁面排在前面有加權(quán)刑顺。
再就是head里的<meta name="keywords" content="搜索的關(guān)鍵詞條" />``<meta name="description" content="搜索頁面的簡介" />
- CSS
- CSS技巧
讓文字居中,但最后一行要靠左開始--->外面一個大盒子設(shè)置居中蹲堂,里面一個小盒子設(shè)置靠左。
做一個圖片提示柒竞,鼠標(biāo)挪上去就有提示彈出--->用attr(alt)獲取提示信息,用img:hover::after改變鼠標(biāo)挪上去的樣式朽基。
設(shè)置定位為absolute時,定位元素相對于最近的非 static 祖先元素定位稼虎,不存在時相對于html大小是可視窗口大小。
改變鼠標(biāo)挪上去顯示的圖片--->img:hover {content:url(https://wx1.sinaimg.cn/mw690/6af43228ly1g1wes9jmrkj20xc0xcqi0.jpg);}
偽元素中的content: "1234 uu 你馬沒了 1234";
空格相當(dāng)于回車換行霎俩,英文字母和數(shù)字之間都不會換行哀军,中文會換行,可以利用這個特點(diǎn)和outline畫出不同的形狀
- 源碼分析
- jquery $函數(shù)分析
window.onload 會在所有資源加載完加載排苍。
而 DOMContentLoaded 是js最佳也是最快執(zhí)行的地方,它會在結(jié)構(gòu)搭好的時候就開始執(zhí)行淘衙,不會受其他圖片,網(wǎng)絡(luò)請求資源的影響彤守。
document.addEventListener('DOMContentLoaded',function() {
console.log("DOM ready");
// js開始的地方
});
$()函數(shù)可以傳入不同的數(shù)據(jù)類型,而js中并沒有實(shí)質(zhì)上的多態(tài)具垫,所以一開始就判斷數(shù)據(jù)類型搞分支,又因?yàn)?不能繼承(會影響其他情況)筝蚕,所以建一個jQueryEle類卦碾,代用jQueryEle原型加屬性起宽,達(dá)到實(shí)現(xiàn)的功能,并返回坯沪。
其構(gòu)造函數(shù)要有個屬性指向dom結(jié)點(diǎn)绿映。
- js ajax
原生js里要用ajax都是建XMLHttpRequest實(shí)例腐晾,不支持XMLHttpRequest的IE8及以下的IE7IE6那些就用ActiveXObject("Microsoft.XMLHttp"),yjr.open("get","./mock.json",true);//false->同步藻糖,設(shè)置請求頭setRequestHeader()淹冰,發(fā)送send()
5個readyState和一堆status代碼(404,403那些)
設(shè)置同步時巨柒,網(wǎng)頁的用戶體驗(yàn)不好,而用異步時潘拱,會帶來一些未加載出導(dǎo)致的錯誤,而用回調(diào)函數(shù)解決芦岂,功能多了會陷入回調(diào)地獄,有性能問題禽最。 - Promise
上面說到異步造成問題袱饭,用 Promise 就可以解決,其主要思想其實(shí)就是縷清楚運(yùn)行順序(與載入延遲無關(guān))呛占,還有給一個未加載出的選擇(加載失敗不再按原代碼運(yùn)行)。
用法是將返回的參數(shù)替換成一個 Promise 實(shí)例(之后還有操作的每一個都要替代成Promise實(shí)例)晾虑,并在其中把正常運(yùn)行的結(jié)果用 resolve 方法傳遞,錯誤運(yùn)行的就用 reject 方法傳遞帜篇。
除第一個函數(shù)外,在函數(shù)調(diào)用的時候就按順序用then方法調(diào)用(then里的傳值對象是函數(shù)類型的)笙隙,函數(shù)之間的參數(shù)傳遞會自動填進(jìn)去,填的就是用 resolve 方法傳遞的對象竟痰。
Promise實(shí)例的 catch 方法里的傳值對象也是函數(shù)類型,是指加載失敗的操作坏快。
all 方法可以做到數(shù)組里的操作全部同時開始執(zhí)行,并等待最慢的操作執(zhí)行后才結(jié)束假消。(它的成功返回值是數(shù)組里的所有方法里的resolve組成的數(shù)組)
race 方法也可以做到數(shù)組里的操作全部同時開始執(zhí)行,但是它會在第一個最快的操作執(zhí)行完之后就繼續(xù)后續(xù)操作岭接。(返回值也理所當(dāng)然是第一個最快的那個)