Rumah > hujung hadapan web > View.js > Cara menggunakan Vue untuk melaksanakan kesan paralaks tatal

Cara menggunakan Vue untuk melaksanakan kesan paralaks tatal

王林
Lepaskan: 2023-09-20 09:34:44
asal
1505 orang telah melayarinya

Cara menggunakan Vue untuk melaksanakan kesan paralaks tatal

Cara menggunakan Vue untuk melaksanakan kesan paralaks tatal

Kesan Tatal Parallax ialah teknologi yang menggunakan elemen yang menatal pada kelajuan berbeza untuk mencipta perbezaan visual dalam halaman web. Ia boleh membawa pengguna pengalaman menyemak imbas yang lebih jelas dan dinamik serta meningkatkan daya tarikan visual halaman web. Dalam artikel ini, kami akan memperkenalkan cara menggunakan Vue untuk melaksanakan kesan paralaks tatal dan memberikan contoh kod khusus.

Pertama, kita perlu mencipta projek Vue. Anda boleh menggunakan alat baris arahan Vue CLI untuk mencipta projek asas Vue dengan cepat. Jalankan arahan berikut dalam terminal:

vue create parallax-effect
Salin selepas log masuk

Kemudian pilih konfigurasi lalai dan tunggu permulaan projek selesai. Masukkan direktori projek dan mulakan pelayan pembangunan:

cd parallax-effect
npm run serve
Salin selepas log masuk

Kini setelah kami mempunyai projek asas Vue, kami akan mencipta komponen paralaks menatal. Cipta fail bernama ParallaxEffect.vue dalam direktori src/components, dan tulis kod berikut dalam fail:

<template>
  <div class="parallax-container">
    <div class="parallax-layer" :style="{ transform: 'translateY(' + scrollY * 0.5 + 'px' }">
      <img src="layer1.png" alt="Layer 1">
    </div>
    <div class="parallax-layer" :style="{ transform: 'translateY(' + scrollY * 0.3 + 'px' }">
      <img src="layer2.png" alt="Layer 2">
    </div>
    <div class="parallax-layer" :style="{ transform: 'translateY(' + scrollY * 0.2 + 'px' }">
      <img src="layer3.png" alt="Layer 3">
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      scrollY: 0
    };
  },
  mounted() {
    window.addEventListener('scroll', this.handleScroll);
  },
  beforeDestroy() {
    window.removeEventListener('scroll', this.handleScroll);
  },
  methods: {
    handleScroll() {
      this.scrollY = window.scrollY;
    }
  }
};
</script>

<style scoped>
.parallax-container {
  height: 100vh;
  overflow: hidden;
  position: relative;
}

.parallax-layer img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}

.parallax-layer:nth-child(2) {
  bottom: 20%;
}

.parallax-layer:nth-child(3) {
  bottom: 40%;
}
</style>
Salin selepas log masuk

Dalam kod di atas, kami mencipta bekas bekas paralaks, yang mengandungi tiga lapisan lapisan paralaks, setiap lapisan menggunakan kelajuan yang berbeza untuk mencapai paralaks tatal. Kami menggunakan tatal data responsif Vue untuk mendengar acara tatal tetingkap dan mengemas kini kedudukan lapisan berdasarkan kedudukan tatal.

Untuk menjadikan kesan paralaks tatal lebih jelas, kami mencapai kesan tindanan yang berbeza dengan menetapkan atribut bahagian bawah yang berbeza untuk lapisan yang berbeza.

Akhir sekali, kita perlu menggunakan komponen ini dalam App.vue. Tambahkan kod berikut pada bahagian templat dalam App.vue:

<template>
  <div id="app">
    <ParallaxEffect />
  </div>
</template>
Salin selepas log masuk

Sekarang mulakan semula pelayan pembangunan dan anda akan melihat halaman web dengan kesan paralaks tatal.

Saya harap artikel ini dapat membantu anda memahami cara menggunakan Vue untuk melaksanakan kesan paralaks tatal. Sudah tentu, anda juga boleh melaraskan kod mengikut keperluan anda sendiri untuk mencapai kesan paralaks tatal yang lebih kompleks dan unik. Selamat berprogram!

Atas ialah kandungan terperinci Cara menggunakan Vue untuk melaksanakan kesan paralaks tatal. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan