Vue press 支持圖片放大功能的實(shí)例代碼
介紹
VuePress 由兩部分組成:一個(gè)以 Vue 驅(qū)動(dòng)的主題系統(tǒng)的簡(jiǎn)約靜態(tài)網(wǎng)站生成工具,和一個(gè)為編寫(xiě)技術(shù)文檔而優(yōu)化的默認(rèn)主題。它是為了支持 Vue 子項(xiàng)目的文檔需求而創(chuàng)建的。
由 VuePress 生成的每個(gè)頁(yè)面,都具有相應(yīng)的預(yù)渲染靜態(tài) HTML,它們能提供出色的加載性能,并且對(duì) SEO 友好。然而,頁(yè)面加載之后,Vue 就會(huì)將這些靜態(tài)內(nèi)容,接管為完整的單頁(yè)面應(yīng)用程序(SPA)。當(dāng)用戶(hù)在瀏覽站點(diǎn)時(shí),可以按需加載其他頁(yè)面。
前兩天接觸到了 Vuepress ,顏值很高,界面簡(jiǎn)潔,容易上手。于是打算把博客從 hexo 遷移過(guò)去。
但是發(fā)現(xiàn)圖片是不能點(diǎn)擊的。 Markdown 在渲染的時(shí)候連 a 標(biāo)簽都沒(méi)有添加,不僅不能直接點(diǎn),也不能放大。然而我的博客中是有很多大圖的,所以這個(gè)功能是剛需。
我試了下最新版本 1.x alpha 還是沒(méi)有這個(gè)功能。所以直接自己動(dòng)手了。
由于我并不熟悉 vue ,所以從源代碼上改比較困難。
最后我使用了 fancybox 庫(kù),并開(kāi)發(fā)了一個(gè)輔助 VSCode 插件。
引入 fancybox
.vuepress/config.js 文件的 head 標(biāo)簽中可以直接添加 fancybox 的 cdn,由于它依賴(lài) jquery,所以還要引入 jquery。
module.exports = {
head: [
// add jquert and fancybox
['script', { src: 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.slim.min.js' }],
['script', { src: 'https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.2/jquery.fancybox.min.js' }],
['link', { rel: 'stylesheet', type: 'text/css', href: 'https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.2/jquery.fancybox.min.css' }]
],
themeConfig: {
// your config
}
}
然后修改圖片的 markdown

將上面的這種格式修改為下面這種,手動(dòng)添加 a 標(biāo)簽、 data-fancybox 和 href 屬性即可。
<a data-fancybox title="xx" href="sss" rel="external nofollow" ></a>
但是這樣手動(dòng)添加太麻煩了,并且想取消掉也不方便。
所以我寫(xiě)了一個(gè) VSCode 插件,來(lái)批量格式化。
VScode 商店搜索 vuepress-img-format 安裝即可。

調(diào)用命令 img format 可以格式化當(dāng)前文檔的所有圖片,img reset format 可以重置格式化,效果如下:

當(dāng)然也可以使用內(nèi)置的快捷鍵:
| 快捷鍵 | 格式化 | 重置格式化 |
|---|---|---|
| Windows/Linux | Ctrl + Shift +8 | Ctrl + Shift + 8 |
| Mac | Cmd + Shift + 8 | Cmd + Shift + 9 |
格式完了之后就可以點(diǎn)擊放大圖片了。

總結(jié)
以上所述是小編給大家介紹的Vue press 支持圖片放大功能的實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
vue實(shí)現(xiàn)雙向綁定和依賴(lài)收集遇到的坑
這篇文章主要介紹了vue的雙向綁定和依賴(lài)收集,主要是通過(guò)Object.defineProperty() 實(shí)現(xiàn)雙向綁定,具體思路代碼大家跟隨小編一起看看吧2018-11-11
vue elementUI table表格數(shù)據(jù) 滾動(dòng)懶加載的實(shí)現(xiàn)方法
這篇文章主要介紹了vue elementUI table表格數(shù)據(jù)滾動(dòng)懶加載的實(shí)現(xiàn)方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-04-04
Vue+Echarts實(shí)現(xiàn)簡(jiǎn)單折線圖
這篇文章主要為大家詳細(xì)介紹了Vue+Echarts實(shí)現(xiàn)簡(jiǎn)單折線圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
antdv的table因數(shù)據(jù)量過(guò)大導(dǎo)致的卡頓問(wèn)題及解決
這篇文章主要介紹了antdv的table因數(shù)據(jù)量過(guò)大導(dǎo)致的卡頓問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
幫助我們高效操作的Virtual?DOM簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要為大家介紹了幫助我們高效操作Virtual?DOM簡(jiǎn)單實(shí)現(xiàn)及原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
vue?parseHTML?函數(shù)拿到返回值后的處理源碼解析
這篇文章主要為大家介紹了vue?parseHTML?函數(shù)拿到返回值后的處理源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07

