1.頁面體驗(yàn)優(yōu)化建議
1.頂部系統(tǒng)反饋號碼重疊2.商品分類欄hover上去,高度變低(2px)。(border-color :#fff)
3.這塊tab切換時(shí)文字位移,這塊上邊框建議border實(shí)現(xiàn),不用切圖。
4.合作區(qū)域hover箭頭消失,另外下面這個(gè)下拉區(qū)域可以加個(gè)box-shadow。
![J{P6({Q4J(KU@N5]QUDI29O.png](http://upload-images.jianshu.io/upload_images/3402722-13153952d3ddb7b5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
.png](http://upload-images.jianshu.io/upload_images/3402722-aae016289a051bcc.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
5.這塊返回頂部可以加個(gè)緩動效果參考如下:
var $back = $('#backTop'),
winH = $(window).height();
var move = function() {
if (!$('body,html').is(":animated")) {
$('body,html').animate({
scrollTop: 0
}, 800);
}
}
var checkPos = function(pos) {
if ($(window).scrollTop() > pos) {
$back.fadeIn();
} else {
$back.fadeOut();
}
}
$back.on('click', move);
checkPos(winH);
$(window).on('scroll', function() {
checkPos(winH);
})
6..這塊要切成png的透明背景的,關(guān)于制作成雪碧圖問題,目前項(xiàng)目基本完成代價(jià)比較大,后期維護(hù)修改圖片也不方便(部分頁面css也要調(diào)整):
7.這塊不連貫,點(diǎn)幾下后面就沒了。(需要復(fù)制一份可以用myclass插件實(shí)現(xiàn))
8.有缺口
9.帶分頁的列表展示頁面,可以采取aajx局部刷新(建議)
2.js,css細(xì)節(jié)優(yōu)化方案
1.盡量用id選擇器,獲取用id選擇器選擇到下一級,另外用$("#id").find("li")比$("#id li")高效。如下在searchselect li上綁定事件可以用jq的事件委托。
$("#searchselect").on("click","li",function () {
});
2.變量,$對象的緩存(用到多次的變量和對象)可以緩存下,js有變量自動提升機(jī)制盡量提前定義。
$(window).scroll(function () {
var pos = $(window).scrollTop(),
$headerFloor = $('#header-floor');
if (pos > 378) {
$headerFloor.removeClass('hidden');
} else {
$headerFloor.addClass('hidden');
}
});
3.避免創(chuàng)建隱式全局變量不加var,下面的selectListShow 可以放到閉包內(nèi),如果真要?jiǎng)?chuàng)建全局變量可以把這個(gè)全部變量賦值到一個(gè)對象上。降低全局變量覆蓋插件里面定義的一些變量參考。
example: loginfo 登錄狀態(tài)。
4.可以考慮使用localStorage本地存儲(兼容到ie8),相比cookie輕量,無需引入依賴庫,內(nèi)存大5m(cookie 5k左右)
5.這里就可以用上面寫的jq的事件委托
Paste_Image.png
6.暴露了太多全局方法,存在隱患,可以放入閉包中。
7.多次引用相同js和css問題,在header區(qū)域已經(jīng)引用了,
建議把通用的js(比如layer,cookie,jq,tabview,plcesHolder)和css()打包壓縮成一個(gè)。
-
(JScompress)命令行方式進(jìn)行壓縮的Web開發(fā)者使用
JScompress.png (grunt)需要nodejs要寫配置文件
8.變量不用加$,從jQuery 3.0開始,不推薦使用$.parseJSON。 要解析JSON字符串,請改用原生的 JSON.parse(JSON,stringify) 方法(ie7需要兼容引入jjson3.min.js)。
9.盡量避免類似.a.b{}.list a{}以及其他一些復(fù)雜選擇器,以提高整站整體CSS渲染。
10.圖片列表的顯屏加載,也就是滾動顯示加載(瀑布流方式)。
11.cdn優(yōu)化把img 和 壓縮版css js放到cdn服務(wù)器。