摘要:并且滿足條件下一個標題高度高于滾動的高度和條件沒有下一個標題的其中之一條件。解決了原來專題頁面的幾個問題,如海報與大小不一致問題。修正了一些邊距的問題。下周工作計劃確保頁面的問題都解決,并完成測試。
2016年第四周周報 1. 上周工作內容
這一周主要把重心放在了項目方面,解決了以下幾個問題:
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是因為我發現在chrome瀏覽器上模擬的時候并不支持低于1px像素的設置 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);
標題欄置頂的問題
描述:在項目中需要將每個分欄的標題在不同的情況下分別置頂,做出原生的效果,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個標題 if(i !== (len - 1)){ nextEle = my.config[tops[i+1]].element; article = $(nextEle).parents("article"); }else{ //最后一個標題 currentEle = my.config[tops[i]].element, article = $(currentEle).parents("article"); } //滿足條件1:當前標題小于滾動的高度。并且滿足條件2:下一個標題高度高于滾動的高度;和條件3:沒有下一個標題;的其中之一條件。 if(tops[i] <= currentTop && (tops[i+1] > (currentTop + 40) || !tops[i+1])){ posfixed = false; //如果目前已經有標題被置頂 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(); } } }) }, //獲取當前頁面滾動的高度 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; })()
該部分并沒有完善,效果還有區別,今天應該可以做完,做完繼續更新。
解決了原來專題頁面的幾個問題,如:
1.poster海報與video大小不一致問題。
2.修正了一些邊距的問題。
確保頁面的問題都解決,并完成測試。
3.問題多列多個元素布局的問題,目前我的布局:
這個是使用
能不能達到下面原生的效果,如下圖:
感覺在編程的時候,更重要的是思考好解決問題的邏輯和需要使用的設計模式與算法,一開始沒有思考對正確的邏輯,結果導致在
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/115075.html
摘要:摘要阿里巴巴千億交易背后,如何盡量避免發布故障在面對實際運維過程中遇到的問題該如何解決阿里巴巴運維技術專家少荃,給我們帶來了解決方案和思路。在阿里,這些屏幕包括監控發布單機器故障預警等。無人值守發布無人值守發布主要是把上述過程自動化智能化。 摘要: 阿里巴巴千億交易背后,如何盡量避免發布故障?在面對實際運維過程中遇到的問題該如何解決?阿里巴巴運維技術專家少荃,給我們帶來了解決方案和思路...
摘要:導讀阿里巴巴千億交易背后,如何盡量避免發布故障在面對實際運維過程中遇到的問題該如何解決近日,在大會上,阿里巴巴運維技術專家少荃,給我們帶來了解決方案和思路。在阿里,這些屏幕包括監控發布單機器故障預警等。 導讀:阿里巴巴千億交易背后,如何盡量避免發布故障?在面對實際運維過程中遇到的問題該如何解決?近日,在GOPS大會上,阿里巴巴運維技術專家少荃,給我們帶來了解決方案和思路。 showIm...
摘要:第二個問題就是說業務團隊之間沒有擴大管理,預算和審核是無頭緒的。支持一些高優先級的比如說支持以及窗口等特性包括說。到現在為止,整體遷移完了,還剩下十個左右的作業沒有遷移完。 作者:張光輝 本文將為大家展示字節跳動公司怎么把Storm從Jstorm遷移到Flink的整個過程以及后續的計劃。你可以借此了解字節跳動公司引入Flink的背景以及Flink集群的構建過程。字節跳動公司是如何兼容以...
摘要:問題回答者黃軼,目前就職于公司擔任前端架構師,曾就職于滴滴和百度,畢業于北京科技大學。最后附上鏈接問題我目前是一名后端工程師,工作快五年了。 showImg(https://segmentfault.com/img/bVbuaiP?w=1240&h=620); 問題回答者:黃軼,目前就職于 Zoom 公司擔任前端架構師,曾就職于滴滴和百度,畢業于北京科技大學。 1. 前端開發 問題 大...
閱讀 1848·2021-11-25 09:43
閱讀 1491·2021-09-02 15:21
閱讀 3452·2019-08-30 15:52
閱讀 1501·2019-08-30 12:48
閱讀 1294·2019-08-30 10:57
閱讀 2928·2019-08-26 17:41
閱讀 681·2019-08-26 11:59
閱讀 1366·2019-08-26 10:41