一行程式碼實現滑鼠橫向滾動💪

林恒發表於2024-06-17

🧑‍💻 寫在開頭

點贊 + 收藏 === 學會🤣🤣🤣

在專案中我們可能會遇到當滑鼠在某個區域內,我們希望滾動滑鼠裡面的內容可以橫向滾動;

比如我們一些常見的後臺狀態列:

那這種該怎麼寫?請看栗子

程式碼如下:

<template>
  <div>
    <div class="top">
      <div class="title">橫 向 滾 動</div>
    </div>
    <div ref="container" class="container">
      <div class="contents" v-for="item in 20" :key="item">{{ item }}</div>
    </div>
    <div class="bottom"></div>
  </div>
</template>

<script>
export default {
  data() {
    return {};
  },
  mounted() {
    this.horizontalScrolling();
  },
  methods: {
    // 水平滾動
    horizontalScrolling() {
      const container = this.$refs.container;
      container.addEventListener("wheel", (e) => {
        e.preventDefault();
        container.scrollLeft += e.deltaY;
      });
    },
  },
};
</script>

<style scoped>
.container {
  margin: 20px 0;
  display: flex;
  align-items: center;
  height: 400px;
  overflow-x: scroll;
  background: #000;
  /* 隱藏捲軸 */
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.contents {
  width: 600px;
  height: 300px;
  flex-shrink: 0; /* 關閉收縮 */
  margin: 0 20px;
  border-radius: 16px;
  text-align: center;
  color: #ffffff;
  line-height: 300px;
  font-size: 60px;
  background: linear-gradient(270deg, #ffd700 0%, #be8f00 50%, #ffdd00 100%);
}
</style>

主要程式碼還是這一塊:

    horizontalScrolling() {
      const container = this.$refs.container;
      container.addEventListener("wheel", (e) => {
        e.preventDefault();
        container.scrollLeft += e.deltaY;
      });
    },

😄一行程式碼是不可能滴,程式碼壓縮那說不準可以,哈哈哈哈哈😄

如果對您有所幫助,歡迎您點個關注,我會定時更新技術文件,大家一起討論學習,一起進步。

一行程式碼實現滑鼠橫向滾動💪

相關文章