Rumah hujung hadapan web uni-app Bagaimana untuk merealisasikan gelongsor ke atas dan menyembunyikan kesan navigasi dalam uniapp

Bagaimana untuk merealisasikan gelongsor ke atas dan menyembunyikan kesan navigasi dalam uniapp

Apr 17, 2023 pm 02:16 PM

Dalam reka bentuk APP mudah alih, bar navigasi merupakan elemen yang sangat penting. Ia membolehkan pengguna mencari maklumat yang mereka perlukan dengan cepat, dan juga merupakan elemen visual yang penting bagi APP. Walau bagaimanapun, semasa proses reka bentuk, kita bukan sahaja perlu mempertimbangkan gaya dan susun atur bar navigasi, tetapi juga memberi perhatian kepada prestasi dan kesan interaksinya dalam senario yang berbeza.

Adalah mudah untuk mencapai kesan meluncur ke bawah dan menyembunyikan navigasi dalam uniapp. Kami hanya perlu menggunakan beberapa gaya mudah dan kod JS untuk mencapainya.

Mula-mula, tambahkan bekas pada kawasan navigasi halaman, tetapkan atribut kedudukannya kepada tetap, dan atribut indeks-znya kepada nilai yang lebih tinggi supaya ia sentiasa berada di bahagian atas halaman. Untuk menyembunyikan navigasi selepas meluncur ke bawah, kita boleh menggunakan atribut transform untuk mengalihkan bar navigasi keluar daripada julat skrin yang boleh dilihat.

Langkah pelaksanaan khusus adalah seperti berikut:

  1. Tambahkan bekas navigasi bernama pengepala dan tambah gaya serta reka letak navigasi di dalamnya.
  2. Tetapkan kedudukan awal bekas navigasi ke bahagian atas skrin.
  3. Gunakan JS untuk mendengar acara tatal skrin Apabila pengguna meluncur ke bawah, bekas navigasi bergerak keluar dari julat skrin yang boleh dilihat. Sebaliknya, apabila pengguna meleret ke atas, bekas navigasi kembali ke bahagian atas skrin.

Pelaksanaan kod khusus adalah seperti berikut:

// html文件代码
<template>
  <div class="wrapper">
    <header>
      <!--导航内容-->
    </header>
    <!--主要内容区域-->
  </div>
</template>

<style>
  header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    background-color: #fff;
    z-index: 999;
    transition: all .3s ease-in-out; // 添加过渡效果
  }
  
  header.hide {
    transform: translateY(-100%);
  }
</style>

<script>
  export default {
    data() {
      return {
        lastScrollTop: 0,
        isHeaderShow: true
      }
    },
    mounted() {
      window.addEventListener('scroll', this.onScroll)
    },
    destroyed() {
      window.removeEventListener('scroll', this.onScroll)
    },
    methods: {
      onScroll(e) {
        const currentScrollTop = document.documentElement.scrollTop
        if (currentScrollTop > 0 && currentScrollTop > this.lastScrollTop) {
          this.isHeaderShow = false
        } else {
          this.isHeaderShow = true
        }
        this.lastScrollTop = currentScrollTop
      }
    },
    computed: {
      headerClass() {
        return {
          hide: !this.isHeaderShow
        }
      }
    }
  }
</script>
Salin selepas log masuk

Dalam kod di atas, kami menggunakan pembolehubah isHeaderShow untuk menandakan sama ada bar navigasi semasa perlu dipaparkan dan menggunakan pengiraan sifat untuk mengikat gaya Kontena navigasi, dan tambahkan pendengar acara tatal dalam kaedah JS untuk mengawal sama ada bar navigasi dipaparkan atau tidak.

Perlu diingatkan bahawa untuk bar navigasi beroperasi dengan betul, kita perlu menetapkan ketinggian bekas navigasi dan memastikan terdapat jarak yang mencukupi di bahagian kepala kawasan kandungan utama, jika tidak navigasi bar akan bertindih dengan kawasan kandungan.

Ringkasnya, dengan menetapkan kedudukan kepada tetap, menambah kesan peralihan dan mengubah atribut pada bekas navigasi, dan kemudian mengawal pergerakan bekas navigasi melalui mendengar acara tatal, kita boleh mencapai kesan gelongsor dengan mudah. ke bawah untuk menyembunyikan navigasi dalam uniapp.

Atas ialah kandungan terperinci Bagaimana untuk merealisasikan gelongsor ke atas dan menyembunyikan kesan navigasi dalam uniapp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah jenis ujian yang boleh anda lakukan dalam aplikasi UNIAPP? Apakah jenis ujian yang boleh anda lakukan dalam aplikasi UNIAPP? Mar 27, 2025 pm 04:59 PM

Artikel ini membincangkan pelbagai jenis ujian untuk aplikasi UNIAPP, termasuk unit, integrasi, fungsional, UI/UX, prestasi, silang platform, dan ujian keselamatan. Ia juga meliputi memastikan keserasian silang platform dan mengesyorkan alat seperti JES

Bagaimanakah anda dapat mengurangkan saiz pakej aplikasi UNIAPP anda? Bagaimanakah anda dapat mengurangkan saiz pakej aplikasi UNIAPP anda? Mar 27, 2025 pm 04:45 PM

Artikel ini membincangkan strategi untuk mengurangkan saiz pakej UNIAPP, memberi tumpuan kepada pengoptimuman kod, pengurusan sumber, dan teknik seperti pemisahan kod dan pemuatan malas.

Apakah alat penyahpepijatan yang tersedia untuk pembangunan Uniapp? Apakah alat penyahpepijatan yang tersedia untuk pembangunan Uniapp? Mar 27, 2025 pm 05:05 PM

Artikel ini membincangkan alat penyahpepijatan dan amalan terbaik untuk pembangunan UNIPP, yang memberi tumpuan kepada alat seperti HBuildex, WeChat Developer Tools, dan Chrome Devtools.

Bagaimanakah anda boleh menggunakan pemuatan malas untuk meningkatkan prestasi? Bagaimanakah anda boleh menggunakan pemuatan malas untuk meningkatkan prestasi? Mar 27, 2025 pm 04:47 PM

Lazy Loading Delers Non-kritikal Sumber untuk meningkatkan prestasi tapak, mengurangkan masa beban dan penggunaan data. Amalan utama termasuk mengutamakan kandungan kritikal dan menggunakan API yang cekap.

Bagaimanakah anda boleh mengoptimumkan imej untuk prestasi web di Uniapp? Bagaimanakah anda boleh mengoptimumkan imej untuk prestasi web di Uniapp? Mar 27, 2025 pm 04:50 PM

Artikel ini membincangkan mengoptimumkan imej dalam UNIPP untuk prestasi web yang lebih baik melalui mampatan, reka bentuk responsif, pemuatan malas, caching, dan menggunakan format WEBP.

Apakah beberapa corak umum untuk menguruskan struktur data yang kompleks di UNIPP? Apakah beberapa corak umum untuk menguruskan struktur data yang kompleks di UNIPP? Mar 25, 2025 pm 02:31 PM

Artikel ini membincangkan menguruskan struktur data yang kompleks di UNIPP, yang memberi tumpuan kepada corak seperti Singleton, Observer, Kilang, dan Negeri, dan strategi untuk mengendalikan perubahan keadaan data menggunakan API VUEX dan VUE 3 API.

Apakah sifat yang dikira di Uniapp? Bagaimana mereka digunakan? Apakah sifat yang dikira di Uniapp? Bagaimana mereka digunakan? Mar 25, 2025 pm 02:23 PM

Ciri -ciri yang dikira oleh Uniapp, yang diperolehi dari Vue.js, meningkatkan pembangunan dengan menyediakan pengendalian data reaktif, boleh diguna semula, dan dioptimumkan. Mereka mengemas kini secara automatik apabila kebergantungan berubah, menawarkan manfaat prestasi dan memudahkan Co -Management Co

Bagaimanakah UNIPP mengendalikan konfigurasi dan gaya global? Bagaimanakah UNIPP mengendalikan konfigurasi dan gaya global? Mar 25, 2025 pm 02:20 PM

UNIPP menguruskan konfigurasi global melalui manifest.json dan gaya melalui app.vue atau app.scss, menggunakan uni.scss untuk pembolehubah dan campuran. Amalan terbaik termasuk menggunakan SCSS, gaya modular, dan reka bentuk responsif.

See all articles