摘要:并且滿足條件下一個標(biāo)題高度高于滾動的高度和條件沒有下一個標(biāo)題的其中之一條件。解決了原來專題頁面的幾個問題,如海報與大小不一致問題。修正了一些邊距的問題。下周工作計劃確保頁面的問題都解決,并完成測試。
2016年第四周周報 1. 上周工作內(nèi)容
這一周主要把重心放在了項目方面,解決了以下幾個問題:
border 1px的問題,直接上代碼:
CSS部分:
.line{ border-bottom: 1px solid #E6E6E6; } .iosx2line{ border-bottom: 0.5px solid #E6E6E6; } .iosx3line{ border-bottom: 0.35714px solid #E6E6E6; }
JS部分:
//解決border 1px問題,之所以引入這個js是因為我發(fā)現(xiàn)在chrome瀏覽器上模擬的時候并不支持低于1px像素的設(shè)置 let dpr = window.devicePixelRatio, newsHead = $(".newsHead"), commentItem = $(".comment-item"), nList = $(".n-list,.newslist-digest"), mainShow = $(".mainshow-wrapper"), borderClass = "", isMobile = !!navigator.userAgent.match(/AppleWebKit.*Mobile.*/); if (dpr >= 2) { var testElem = document.createElement("div"); testElem.style.border = ".5px solid transparent"; document.body.appendChild(testElem); if (testElem.offsetHeight == 1){ if(isMobile && dpr === 2){ borderClass = "iosx2line"; }else if(isMobile && dpr === 3){ borderClass = "iosx3line"; }else{ borderClass = "line"; } }else{ borderClass = "line"; } document.body.removeChild(testElem); } newsHead.addClass(borderClass); commentItem.addClass(borderClass); nList.addClass(borderClass); mainShow.addClass(borderClass);
標(biāo)題欄置頂?shù)膯栴}
描述:在項目中需要將每個分欄的標(biāo)題在不同的情況下分別置頂,做出原生的效果,JS代碼如下:
const TopTitle = (() => { const my = { config : { }, init(){ let h2s = $(".topNews>h2"), body = $("body"), posfixed = false; $(window).on("scroll",function(){ let titleEle = $("#topTitle"); h2s.forEach(function(item,index){ my.config[my.getElementTop(item)] = { html :`${item.innerHTML}
`, isfixed : false, element : item }; }) let tops = Object.keys(my.config), currentEle, nextEle, article, currentTop = my.getScrollTop(); for(let i = 0,len = tops.length; i < len; i++){ //前n-1個標(biāo)題 if(i !== (len - 1)){ nextEle = my.config[tops[i+1]].element; article = $(nextEle).parents("article"); }else{ //最后一個標(biāo)題 currentEle = my.config[tops[i]].element, article = $(currentEle).parents("article"); } //滿足條件1:當(dāng)前標(biāo)題小于滾動的高度。并且滿足條件2:下一個標(biāo)題高度高于滾動的高度;和條件3:沒有下一個標(biāo)題;的其中之一條件。 if(tops[i] <= currentTop && (tops[i+1] > (currentTop + 40) || !tops[i+1])){ posfixed = false; //如果目前已經(jīng)有標(biāo)題被置頂 if(my.config[tops[i]].isfixed === false){ my.config[tops[i]].isfixed = true; article.append(my.config[tops[i]].html); if(!!titleEle){ titleEle.remove(); } } }else if(nextEle.getBoundingClientRect().top <= 40){ console.log(11); if(posfixed == false){ $("#topTitle").removeClass().addClass("posunfixed"); posfixed = true; } }else{ console.log(22); posfixed = false; titleEle.remove(); } } }) }, //獲取當(dāng)前頁面滾動的高度 getScrollTop(){ var scrollTop=0; if(document.documentElement&&document.documentElement.scrollTop){ scrollTop=document.documentElement.scrollTop; }else if(document.body){ scrollTop=document.body.scrollTop; } return scrollTop; }, //獲取元素在頁面中的所在位置高度 getElementTop(element){ var actualTop = element.offsetTop; var current = element.offsetParent; while (current !== null){ actualTop += current.offsetTop; current = current.offsetParent; } return actualTop; } } return my; })()
該部分并沒有完善,效果還有區(qū)別,今天應(yīng)該可以做完,做完繼續(xù)更新。
解決了原來專題頁面的幾個問題,如:
1.poster海報與video大小不一致問題。
2.修正了一些邊距的問題。
確保頁面的問題都解決,并完成測試。
3.問題多列多個元素布局的問題,目前我的布局:
這個是使用
能不能達(dá)到下面原生的效果,如下圖:
感覺在編程的時候,更重要的是思考好解決問題的邏輯和需要使用的設(shè)計模式與算法,一開始沒有思考對正確的邏輯,結(jié)果導(dǎo)致在
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/78754.html
摘要:摘要阿里巴巴千億交易背后,如何盡量避免發(fā)布故障在面對實際運(yùn)維過程中遇到的問題該如何解決阿里巴巴運(yùn)維技術(shù)專家少荃,給我們帶來了解決方案和思路。在阿里,這些屏幕包括監(jiān)控發(fā)布單機(jī)器故障預(yù)警等。無人值守發(fā)布無人值守發(fā)布主要是把上述過程自動化智能化。 摘要: 阿里巴巴千億交易背后,如何盡量避免發(fā)布故障?在面對實際運(yùn)維過程中遇到的問題該如何解決?阿里巴巴運(yùn)維技術(shù)專家少荃,給我們帶來了解決方案和思路...
摘要:導(dǎo)讀阿里巴巴千億交易背后,如何盡量避免發(fā)布故障在面對實際運(yùn)維過程中遇到的問題該如何解決近日,在大會上,阿里巴巴運(yùn)維技術(shù)專家少荃,給我們帶來了解決方案和思路。在阿里,這些屏幕包括監(jiān)控發(fā)布單機(jī)器故障預(yù)警等。 導(dǎo)讀:阿里巴巴千億交易背后,如何盡量避免發(fā)布故障?在面對實際運(yùn)維過程中遇到的問題該如何解決?近日,在GOPS大會上,阿里巴巴運(yùn)維技術(shù)專家少荃,給我們帶來了解決方案和思路。 showIm...
摘要:第二個問題就是說業(yè)務(wù)團(tuán)隊之間沒有擴(kuò)大管理,預(yù)算和審核是無頭緒的。支持一些高優(yōu)先級的比如說支持以及窗口等特性包括說。到現(xiàn)在為止,整體遷移完了,還剩下十個左右的作業(yè)沒有遷移完。 作者:張光輝 本文將為大家展示字節(jié)跳動公司怎么把Storm從Jstorm遷移到Flink的整個過程以及后續(xù)的計劃。你可以借此了解字節(jié)跳動公司引入Flink的背景以及Flink集群的構(gòu)建過程。字節(jié)跳動公司是如何兼容以...
摘要:問題回答者黃軼,目前就職于公司擔(dān)任前端架構(gòu)師,曾就職于滴滴和百度,畢業(yè)于北京科技大學(xué)。最后附上鏈接問題我目前是一名后端工程師,工作快五年了。 showImg(https://segmentfault.com/img/bVbuaiP?w=1240&h=620); 問題回答者:黃軼,目前就職于 Zoom 公司擔(dān)任前端架構(gòu)師,曾就職于滴滴和百度,畢業(yè)于北京科技大學(xué)。 1. 前端開發(fā) 問題 大...
閱讀 767·2023-04-25 15:13
閱讀 1388·2021-11-22 12:03
閱讀 816·2021-11-19 09:40
閱讀 1898·2021-11-17 09:38
閱讀 1702·2021-11-08 13:18
閱讀 649·2021-09-02 15:15
閱讀 1760·2019-08-30 15:54
閱讀 2623·2019-08-30 11:12