国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Vue 自定義 directive 實現點擊放大顯示 wordpress wp-json 接口獲取的

AndroidTraveler / 1317人閱讀

摘要:在做一個項目,需要從中通過接口獲取內容,然后用顯示出來,顯示出來的內容中,圖片大小都只有寬,原始圖片較大,包含更多細節,因此希望能夠實現點擊放大查看圖片細節。效果原內容點擊圖片后

在做一個項目,需要從 wordpress 中通過 wp-json 接口獲取 post 內容,然后用 v-html 顯示出來,顯示出來的內容中,圖片大小都只有 300px 寬,原始圖片較大,包含更多細節,因此希望能夠實現點擊放大查看圖片細節。

仔細看了一下 post 內容的 html 代碼中 img 元素本身的 src 屬性指向的圖片是 wordpress 經過縮放之后的圖片,寬度只有 300px,細節丟失也較嚴重,同時這些 img 元素都有一個 srcset 屬性,這個屬性主要是用來在不同的移動設備中顯示不同分辨率圖片的,包含了不同分辨率的圖片地址,因此想到能夠通過這個屬性來顯示大圖片。

下面是相關 directive 的代碼 SrcSet.js:

export default {
  update (el) {
    el.querySelectorAll("img[srcset]").forEach(i => {
      i.style.cursor = "url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB3aWR0aD0iMjRweCIgaGVpZ2h0PSIyNHB4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogIDxnIGlkPSJtYWduaWZ5aW5nX2dsYXNzX2FkZCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICA8cGF0aCBkPSJNMjMuMzQxMTI1LDIwLjE1OTI1IEwxNi43NDY3NSwxMy41NjQ4NzUgQzE3LjUzOCwxMi4yMjU3NSAxOCwxMC42NjgzNzUgMTgsOSBDMTgsNC4wMjkzNzUgMTMuOTcwNjI1LDAgOSwwIEM0LjAyOTM3NSwwIDAsNC4wMjkzNzUgMCw5IEMwLDEzLjk3MDYyNSA0LjAyOTM3NSwxOCA5LDE4IEMxMC42NjgzNzUsMTggMTIuMjI1NzUsMTcuNTM4IDEzLjU2NDg3NSwxNi43NDY3NSBMMjAuMTU5MjUsMjMuMzQwNzUgQzIwLjU2NjEyNSwyMy43NDgzNzUgMjEuMTI4NjI1LDI0IDIxLjc1LDI0IEMyMi45OTI3NSwyNCAyNCwyMi45OTI3NSAyNCwyMS43NSBDMjQsMjEuMTI4NjI1IDIzLjc0OCwyMC41NjYxMjUgMjMuMzQxMTI1LDIwLjE1OTI1IFogTTksMTUuNzUgQzUuMjcyMTI1LDE1Ljc1IDIuMjUsMTIuNzI3ODc1IDIuMjUsOSBDMi4yNSw1LjI3MjEyNSA1LjI3MjEyNSwyLjI1IDksMi4yNSBDMTIuNzI3ODc1LDIuMjUgMTUuNzUsNS4yNzIxMjUgMTUuNzUsOSBDMTUuNzUsMTIuNzI3ODc1IDEyLjcyNzg3NSwxNS43NSA5LDE1Ljc1IFogTTEyLjc1LDcuODc1IEwxMC4xMjUsNy44NzUgTDEwLjEyNSw1LjI1IEMxMC4xMjUsNC42Mjg2MjUgOS42MjEzNzUsNC4xMjUgOSw0LjEyNSBDOC4zNzg2MjUsNC4xMjUgNy44NzUsNC42Mjg2MjUgNy44NzUsNS4yNSBMNy44NzUsNy44NzUgTDUuMjUsNy44NzUgQzQuNjI4NjI1LDcuODc1IDQuMTI1LDguMzc4NjI1IDQuMTI1LDkgQzQuMTI1LDkuNjIxMzc1IDQuNjI4NjI1LDEwLjEyNSA1LjI1LDEwLjEyNSBMNy44NzUsMTAuMTI1IEw3Ljg3NSwxMi43NSBDNy44NzUsMTMuMzcxMzc1IDguMzc4NjI1LDEzLjg3NSA5LDEzLjg3NSBDOS42MjEzNzUsMTMuODc1IDEwLjEyNSwxMy4zNzEzNzUgMTAuMTI1LDEyLjc1IEwxMC4xMjUsMTAuMTI1IEwxMi43NSwxMC4xMjUgQzEzLjM3MTM3NSwxMC4xMjUgMTMuODc1LDkuNjIxMzc1IDEzLjg3NSw5IEMxMy44NzUsOC4zNzkgMTMuMzcxMzc1LDcuODc1IDEyLjc1LDcuODc1IFoiIGlkPSJTaGFwZSIgZmlsbD0iIzAwMDAwMCI+PC9wYXRoPgogIDwvZz4KPC9zdmc+), auto"

      let srcset = i.attributes.getNamedItem("srcset").value
      let originalSrc = srcset && srcset.split(", ").map(src => (src.split(" ")[0])).pop()
      if (originalSrc) {
        let img = new window.Image()
        img.src = originalSrc
        img.style.position = "fixed"
        img.style.left = img.style.top = "5%"
        img.style.maxWidth = img.style.maxHeight = "90%"
        img.style.zIndex = 10086
        img.style.cursor = "url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB3aWR0aD0iMjRweCIgaGVpZ2h0PSIyNHB4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogIDxnIGlkPSJtYWduaWZ5aW5nX2dsYXNzX21pbnVzIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgIDxwYXRoIGQ9Ik0yMy4zNDExMjUsMjAuMTU5MjUgTDE2Ljc0Njc1LDEzLjU2NDg3NSBDMTcuNTM4LDEyLjIyNTc1IDE4LDEwLjY2ODM3NSAxOCw5IEMxOCw0LjAyOTM3NSAxMy45NzA2MjUsMCA5LDAgQzQuMDI5Mzc1LDAgMCw0LjAyOTM3NSAwLDkgQzAsMTMuOTcwNjI1IDQuMDI5Mzc1LDE4IDksMTggQzEwLjY2ODM3NSwxOCAxMi4yMjU3NSwxNy41MzggMTMuNTY0ODc1LDE2Ljc0Njc1IEwyMC4xNTkyNSwyMy4zNDA3NSBDMjAuNTY2MTI1LDIzLjc0ODM3NSAyMS4xMjg2MjUsMjQgMjEuNzUsMjQgQzIyLjk5Mjc1LDI0IDI0LDIyLjk5Mjc1IDI0LDIxLjc1IEMyNCwyMS4xMjg2MjUgMjMuNzQ4LDIwLjU2NjEyNSAyMy4zNDExMjUsMjAuMTU5MjUgWiBNOSwxNS43NSBDNS4yNzIxMjUsMTUuNzUgMi4yNSwxMi43Mjc4NzUgMi4yNSw5IEMyLjI1LDUuMjcyMTI1IDUuMjcyMTI1LDIuMjUgOSwyLjI1IEMxMi43Mjc4NzUsMi4yNSAxNS43NSw1LjI3MjEyNSAxNS43NSw5IEMxNS43NSwxMi43Mjc4NzUgMTIuNzI3ODc1LDE1Ljc1IDksMTUuNzUgWiBNMTIuNzUsNy44NzUgTDUuMjUsNy44NzUgQzQuNjI4NjI1LDcuODc1IDQuMTI1LDguMzc4NjI1IDQuMTI1LDkgQzQuMTI1LDkuNjIxMzc1IDQuNjI4NjI1LDEwLjEyNSA1LjI1LDEwLjEyNSBMMTIuNzUsMTAuMTI1IEMxMy4zNzEzNzUsMTAuMTI1IDEzLjg3NSw5LjYyMTM3NSAxMy44NzUsOSBDMTMuODc1LDguMzc5IDEzLjM3MTM3NSw3Ljg3NSAxMi43NSw3Ljg3NSBaIiBpZD0iU2hhcGUiIGZpbGw9IiMwMDAwMDAiPjwvcGF0aD4KICA8L2c+Cjwvc3ZnPg==), auto"

        img.addEventListener("click", () => {
          document.body.removeChild(img)
        })

        i.addEventListener("click", () => {
          document.body.appendChild(img)
        })
      }
    })
  }
}

然后在 main.js 中引入并注冊 directive:

import SrcSet from "./SrcSet"
Vue.directive("srcset", SrcSet)

最后,在需要用到的地方,添加 v-srcset 指令

效果:

原 post 內容:

點擊圖片后:

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/86699.html

相關文章

  • WordPress REST API基本使用

    摘要:所以通常使用這種易于編寫閱讀解析的數據格式規范來進行數據通信。插件地址安裝啟用后,除了已經登陸的管理員,其他用戶無權限訪問數據。 WordPress系統默認開放REST API,也就是說,除了以HTML格式輸出內容, 還可以以JSON格式輸出文章/用戶/評論等數據。 之所以支持JSON數據格式響應,是由于目前各種智能終端設備,如手機/平板/電視/路由器/家電/玩具等, 都要與云端服務器...

    fancyLuo 評論0 收藏0
  • 收集整理適用博客建站免費開源Wordpress主題-簡約好看WP主題

    摘要:最重要的就是找一個適合自己的主題了。事實上,免費主題也非常多,而且很多的免費主題在功能上和界面美觀上已經大大超過了付費的主題。加上這些主題都是開源的,基本上可以在上找得到源碼,安全性是沒有問題,主題的作者也在不斷更新當中。WordPress最重要的就是找一個適合自己的主題了。好一點的WordPress主題基本上都是要收費的,而且價格還不便宜,這導致了不少的新手朋友們很為難。而有時我們僅僅根據...

    番茄西紅柿 評論0 收藏2637
  • vuejs2 + wp-rest-api開發web app

    摘要:之前我寫了一篇利用,與制作一個屬于自己博客的移動,使用的是的方式進行的開發,今天我就說一下使用與開發一個的方法。 之前我寫了一篇《利用Cordova,jqurey與wp-rest-api制作一個屬于自己博客的移動APP》,使用的是jQuery mobile的方式進行web app的開發,今天我就說一下使用vuejs 與 wp-reset-api開發一個web app的方法。先看看做好以...

    djfml 評論0 收藏0
  • Vue 實現音樂項目 music app 知識點總結分享

    摘要:后兩個屬性可選。屬性定義了項目的縮小比例,默認為,即如果空間不足,該項目將縮小。屬性定義了在分配多余空間之前,項目占據的主軸空間。它的默認值為,即項目的本來大小。結合的異步組件和的代碼分割功能,輕松實現路由組件的懶加載。 項目總結 這是我第二個用 Vue 實現的項目,下面內容包括了在實現過程中所記錄的知識點以及一些小技巧 項目演示地址:https://music-vue.n-y.io源...

    meteor199 評論0 收藏0
  • quill深入淺出

    摘要:與的關系既是表達文檔,又表達文檔修改。然后會監聽事件,然后觸發的方法,傳入參數,然后在的方法中,會依據構建出對應的數組,與已有的合并,使當前保持最新。 背景分析/技術選型 quillAPI驅動設計,自定義內容和格式化,跨平臺,易用. CKEditor功能強,配置靈活,ui漂亮,兼容性差 TinyMCE文檔好,功能強,bug少,無外部依賴。 UEditor功能齊全,但是不維護了,依賴j...

    hlcfan 評論0 收藏0

發表評論

0條評論

AndroidTraveler

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<