色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

頁面構建和JS前端不得不說的那點事兒

  作為微博的頁面構建工程師,主要職責就是利用html&css,高質量的完成靜態頁面的制作,保證項目的按時完成。而頁面需要的js效果則交給下游的js前端工程師去做。在微博,這兩個崗位是分開的。但在大家的思維定勢里可能覺得這兩個崗位應由一個人來完成最好,畢竟,頁面構建工程師寫的html結構不一定是js工程師想要的那種,js工程師可能有更高效的方式。所以,在頁面構建之前最好能與js工程師溝通一下,把實現方案確定好。

  但在實際項目流程中,當進行到頁面構建的時候,產品經理可能還沒安排到js資源,這時我們只能按照產品的需求和自己的想法去寫html結構,不僅要考慮到設計稿的還原度、瀏覽器的兼容性、以后可能要添加的新功能的預見位置,還要考慮怎樣寫html結構能讓js最省事的完成產品的交互效果。作為一名有責任感的頁面構建工程師,表示亞歷山大!所以,我們經常查看頁面源碼時,會發現這樣的注釋,用來告訴js工程師怎么去操作dom結構。

  有時為了做到最簡,我們要考慮好久,前一陣子的倫敦奧運會,微博首頁右側要添加一個奧運金牌榜的模塊,要求有收起和展開的按鈕,用來顯示不同的內容。

  對網站來說這是很稀松平常的交互效果。具體html實現可能有同學會想到,做兩個div,各自包含展開的內容和收起的內容。在點擊展開按鈕時出現一個,另一個隱藏;而在點擊收起的時候做相反的處理。這種事本身也沒有對與錯,能實現效果就好。但作為出現在微博首頁的模塊,并且出現在第一屏的位置,對性能的優化肯定是要做足的。能盡量在我們css這一層做的,決不放到js那邊去做。我的處理方式是把收起展開的樣式都寫好,放在一起,讓js在默認展開或點擊展開的時候顯示turn_olym_on,在點擊收起的時候更換為turn_olym_off,這樣js就只是更換一個class名的代碼量,而對于展開收起的兩個按鈕,我也通過更換的class名來顯示和隱藏。

  具體html代碼:

  在這里把所有用到的代碼全部放在一起,把某種狀態時不用顯示的隱藏掉,比如展開狀態時,class=”show_less W_linecolor”的div和展開的按鈕class=”W_moredown”不用顯示,就可以在最外層的div上寫:

  css暫時隱藏掉這兩元素:

  而當收起的時候,最外層的div就變成:

  css則把之前隱藏的兩個元素顯示出來,并把需要隱藏的排行榜四五名class=”no_45″的tr標簽、賽事重點的class=”show_more”及收起的按鈕class=”W_moreup”隱藏:

  這樣,就只需要js在點擊收起的時候把turn_olym_on換成turn_olym_off,而點擊展開的時候把turn_olym_off換成turn_olym_on就可以了,其余的隱藏展示全部有css來搞定。

  總結:

  了解一些上下游工作的知識,讓上下游溝通更順暢,提高工作效率,是我們共同的目標。

  頁面構建的工作,面臨著很多的挑戰,眼下html5的新標簽、高級瀏覽器原生支持的各種api,還有css3新鮮好玩的新屬性等等。。。都需要我們去學習,不求完全掌握,但求能了解熟悉,能知道是怎么回事。把學到的新知識應用到實際項目中,對公司對團隊對自己都有益~

  元芳,你怎么看?

it知識庫頁面構建和JS前端不得不說的那點事兒,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 将乐县| 华坪县| 同江市| 古丈县| 巴楚县| 渝中区| 繁昌县| 德兴市| 塘沽区| 大兴区| 奎屯市| 怀化市| 红安县| 中方县| 靖远县| 涿鹿县| 阆中市| 建瓯市| 舟曲县| 贵定县| 榆中县| 丽江市| 镇雄县| 仙桃市| 婺源县| 临漳县| 泸溪县| 阿荣旗| 江华| 吉隆县| 大余县| 龙海市| 和田县| 光山县| 兴和县| 双城市| 手游| 繁昌县| 平南县| 涪陵区| 宁远县|