亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > Markodwn 標題對齊的同步滾動實現(xiàn)思路詳解

Markodwn 標題對齊的同步滾動實現(xiàn)思路詳解

熱門標簽:高德地圖標注廁所 智能語音電銷機器人客戶端 地圖標注沿海城市房價 通遼地圖標注app 中國地圖標注城市的 江西ai電銷機器人如何 威海語音外呼系統(tǒng)平臺 地圖標注員工作內(nèi)容 西安金倫外呼系統(tǒng)

前言

需要給正在寫的Markodwn編輯器加上同步滾動的功能,百度了一通,沒找到比較好的思路。就自己寫了一個。

Github上是寫好的庫,和更直觀的Demo。

Github

這篇文章主要講的是實現(xiàn)的思路。

介紹

同步滾動的實現(xiàn)方式有很多種。簡單粗暴的就直接讓 HTMLElement.scrollTop 相等,還有就是讓滾動條等比例滾動,還有標題對齊的滾動(這個是我在 stackedit 上看到的)。

這篇文章主要的內(nèi)容是標題對齊同步滾動的實現(xiàn)方式。

個人來講比較喜歡標題對齊,因為這種方式相對于另外兩個對用戶更友好。

從原理上來講標題對齊實際上是等比例滾動的改良版。因為他們的核心都是通過計算編輯區(qū)和預覽區(qū)的高度比值決定滾動的距離。

DEMO

下面是DEMO的GIF圖

注意左邊的 # 同步滾動 同步滾動 。

可以看到隨著滾動條的移動,左右兩邊滾動的距離是不同的。

這個看起來有點像等比例滾動,但是他們是不一樣的,區(qū)別在等比例滾動根據(jù)兩邊的 全文高度 決定滾動距離,標題對齊方式根據(jù) 標題下內(nèi)容高度 決定滾動距離。

思路

上圖是一張示意圖:

# heading 表示標題, content 表示標題下面的內(nèi)容。我把 標題+內(nèi)容 稱為片段(fragment)。

等比例滾動我想應該比較好理解,就是通過計算編輯區(qū)和預覽區(qū)的高度比值,然后根據(jù)比值再計算滾動距離。

而標題對齊要更加精確一些,它把編輯區(qū)和預覽區(qū)的高度換成了 標題高度+標題下內(nèi)容的高度 即 片段 的高度,然后根據(jù)當前的片段對應的高度計算滾動距離。

上面的示意圖中的 md height 和 html height 就是我們需要的 片段的高度 。

很明顯只要我們根據(jù)這兩個高度的比值就可以計算出相對應滾動的距離。

具體過程
 

首先需要編輯區(qū)和預覽區(qū)的標題信息,數(shù)據(jù)結(jié)構(gòu)如下。這里用 editFragmentsInfopreFragmentsInfo 代替

FragmentInfo: {
    pairId,         // 于編輯區(qū)/預覽區(qū)相對應的標題匹配用的id
    offsetTop,      // 距離頂部偏移的距離
    height          // 標題加上內(nèi)容的高度
}

然后需要能夠獲取當前頁面頂部的標題塊的方法,這里用 getCurrentFragment() 代替 
 

接下來要在 編輯區(qū)(editArea)/預覽區(qū)(previewArea) 的滾動事件中向 預覽區(qū)(previewArea)/編輯區(qū)(editArea) 發(fā)送消息通知它要開始滾動了。

在另一區(qū)域接收到之后,進行以下操作。(假設主動滾動的是編輯區(qū),被動滾動的是預覽區(qū)即 另一區(qū)域 )

  1. 先要拿到當前在頂部的標題,用上面提到的 getCurrentHeading() 獲取。
  2. 然后要在預覽區(qū)中匹配到對應的標題。
  3. 根據(jù)兩邊 headingInfo.height 的比值計算出的數(shù)值再加上 headingInfo.offsetTop 的值就是預覽區(qū)的 scrollTop 。
  4. 到此為止,一次同步就結(jié)束了。這一過程是綁定在元素的滾動事件上的,每次滾動都會觸發(fā)一次這樣的過程。

同步問題

因為一個元素的滾動會導致另一個元素滾動,這必定會形成死循環(huán)。所以在滾動事件中一定要進行判斷,避免死循環(huán)。

這是簡單的互斥方法,支持兩個以上對象的互斥。
 

總結(jié)

以上所述是小編給大家介紹的Markodwn 標題對齊的同步滾動實現(xiàn)思路詳解,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

標簽:晉中 眉山 北海 營口 崇左 青海 河池 阜陽

巨人網(wǎng)絡通訊聲明:本文標題《Markodwn 標題對齊的同步滾動實現(xiàn)思路詳解》,本文關(guān)鍵詞  Markodwn,標題,對齊,的,同步,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Markodwn 標題對齊的同步滾動實現(xiàn)思路詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于Markodwn 標題對齊的同步滾動實現(xiàn)思路詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    成人a级高清视频在线观看| 国产一区精品| 国产伦久视频免费观看 视频| 国产亚洲免费观看| 亚洲精品久久久中文字| 日韩女人做爰大片| 久久久久久久久综合影视网| 日韩专区一区| 久久99青青久久99久久| 欧美一区二区三区性| 成人a大片在线观看| 成人a大片在线观看| 成人av在线播放| 黄视频网站在线观看| 国产91精品系列在线观看| 中文字幕一区二区三区精彩视频| 午夜在线亚洲男人午在线| 国产亚洲免费观看| 成人在免费观看视频国产| 成人免费高清视频| 日韩综合| 亚洲 激情| 国产极品白嫩美女在线观看看| 日韩免费片| 国产一区二区福利久久| 二级片在线观看| 韩国毛片| 99久久精品费精品国产一区二区| 国产精品12| 国产精品12| 精品在线观看国产| 美女免费精品视频在线观看| 欧美日本国产| 日韩在线观看网站| 欧美一级视频免费观看| 一级毛片视频播放| 国产成人啪精品| 成人免费网站视频ww| 黄视频网站免费观看| 午夜精品国产自在现线拍| 天天色成人网| 欧美国产日韩一区二区三区| 国产网站免费视频| 国产美女在线观看| 成人高清视频免费观看| 成人在激情在线视频| 欧美另类videosbestsex高清| 国产一区二区精品| 国产激情视频在线观看| 99久久精品国产高清一区二区| 欧美激情一区二区三区在线| 久久久成人网| 一级毛片看真人在线视频| 欧美激情一区二区三区视频 | 亚洲精品久久玖玖玖玖| 亚久久伊人精品青青草原2020| 精品国产一区二区三区久久久狼| 国产麻豆精品hdvideoss| 黄视频网站在线观看| 999精品影视在线观看| 日本伦理片网站| 精品国产一区二区三区久久久狼| 台湾美女古装一级毛片| 国产91精品一区| 欧美a免费| 欧美a免费| 欧美一级视| 99色播| 欧美另类videosbestsex| 国产伦理精品| 欧美a级v片不卡在线观看| 欧美日本国产| 香蕉视频久久| 免费一级生活片| 中文字幕97| 97视频免费在线观看| 99热视热频这里只有精品| 欧美1区| 91麻豆精品国产片在线观看| 精品国产一区二区三区国产馆| 九九九国产| 青青久久精品| 91麻豆精品国产片在线观看| 精品视频免费观看| 久久国产精品自由自在| 欧美日本免费| 日韩免费在线视频| 亚州视频一区二区| 国产a一级| 国产一区二区精品久久| 日韩女人做爰大片| 99久久精品国产国产毛片| 精品在线观看国产| 欧美另类videosbestsex视频| 中文字幕97| 欧美爱色| 国产成人欧美一区二区三区的| 九九干| 999精品视频在线| 国产韩国精品一区二区三区| 精品国产亚洲一区二区三区| 欧美爱色| 国产国语对白一级毛片| 夜夜操网| 国产亚洲免费观看| 亚洲第一视频在线播放| 午夜家庭影院| 精品在线观看一区| 国产视频网站在线观看| 日本伦理片网站| 国产精品1024永久免费视频| 欧美激情一区二区三区视频 | 国产a一级| 国产a免费观看| 精品视频在线看 | 久久精品店| 黄色短视屏| 精品国产香蕉在线播出| 一 级 黄 中国色 片| 成人a大片在线观看| 国产成人精品综合久久久| 一 级 黄 中国色 片| 欧美另类videosbestsex视频| 国产麻豆精品免费视频| 色综合久久天天综合观看| 久久久久久久久综合影视网| 国产成人精品综合| 国产成a人片在线观看视频| 国产伦久视频免费观看视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产美女在线观看| 99久久精品国产国产毛片| 国产麻豆精品免费密入口| 国产麻豆精品免费密入口| 国产国语对白一级毛片| 国产麻豆精品高清在线播放| 国产高清在线精品一区二区| 国产伦精品一区二区三区无广告 | 可以免费在线看黄的网站| 国产麻豆精品| 99热视热频这里只有精品| 免费的黄视频| 国产不卡在线观看| 亚洲第一页乱| 天堂网中文在线| 精品毛片视频| 一级片片| 精品视频在线看| 欧美国产日韩在线| 欧美激情一区二区三区视频| 日日爽天天| 久久99中文字幕久久| 九九精品在线| 国产网站免费在线观看| 精品视频在线观看一区二区三区| 免费国产一级特黄aa大片在线| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 一级女人毛片人一女人| 久草免费在线色站| 国产一区免费观看| 精品久久久久久中文字幕2017| 国产a一级| 日本特黄一级| 黄色免费三级| 国产综合91天堂亚洲国产| 国产一区免费观看| 青青久久国产成人免费网站| 999久久狠狠免费精品| 在线观看成人网| 免费毛片播放| 久久精品免视看国产明星 | 高清一级毛片一本到免费观看| 欧美另类videosbestsex久久 | 日本伦理黄色大片在线观看网站| 香蕉视频久久| 天天做日日干| 国产原创中文字幕| 台湾美女古装一级毛片| 国产一区二区精品| 国产91精品露脸国语对白| 日日夜夜婷婷| 国产视频久久久| 国产美女在线一区二区三区| 日本特黄特色aaa大片免费| 国产成人啪精品| 午夜在线亚洲男人午在线| 免费国产在线视频| 九九免费精品视频| 可以免费看毛片的网站| 青青久久精品| 香蕉视频亚洲一级| 午夜激情视频在线观看| 精品在线观看一区| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 中文字幕97| 可以免费在线看黄的网站| 久久国产精品只做精品| 精品国产亚洲一区二区三区| 97视频免费在线观看| 国产麻豆精品免费密入口|