Vue3哈希模式實現(xiàn)錨點導航方式
vue3利用哈希模式實現(xiàn)錨點導航
在Vue.js應用中,實現(xiàn)哈希模式的錨點導航是一項常見而有用的功能。
通過哈希模式,我們可以在頁面間快速跳轉,而無需重新加載整個頁面,這對于提升用戶體驗尤為重要。
本文將介紹如何在Vue應用中利用哈希模式實現(xiàn)錨點導航,并且結合CSDN的使用進行詳細說明。
準備工作
首先,確保你的Vue項目已經(jīng)初始化,并且已經(jīng)安裝了Vue Router。
如果還沒有安裝Vue Router,你可以通過以下命令進行安裝:
設置路由
在Vue Router中,我們需要將路由模式設置為哈希模式。
在創(chuàng)建Vue Router實例時,可以通過設置mode: 'hash'
來啟用哈希模式。
// router/index.js import { createRouter, createWebHashHistory, RouteRecordRaw } from "vue-router"; export const routes: Array<RouteRecordRaw> = [ ... ] const router = createRouter({ history: createWebHashHistory(), routes, }); export default router;
組件使用
<script setup lang="ts"> const scrollToAnchor = (data: string) => { // 從完整路徑中解析出真正的錨點部分 const hash = data; // 注意:根據(jù)你的URL結構調整索引 if (hash) { const element = document.getElementById(hash); if (element) { element.scrollIntoView({ behavior: "smooth" }); } } }; const onLiclick = (event: any) => { scrollToAnchor(event.target.dataset.hash); }; </script>
<template> <div> <nav> <ul @click="onLiclick"> <li data-hash="my-box">首頁</li> <li data-hash="chanpin-box">產(chǎn)品介紹</li> <li data-hash="news-box">實時新聞</li> <li data-hash="about-box">關于我們</li> <li data-hash="lianxi-box">聯(lián)系我們</li> </ul> </nav> <div class="pages"> <div id="my-box"> <h1>我的</h1> </div> <div id="chanpin-box"> <h1>產(chǎn)品介紹</h1> </div> <div id="news-box"> <h1>實時新聞</h1> </div> <div id="about-box"> <h1>關于我們</h1> </div> <div id="lianxi-box"> <h1>聯(lián)系我們</h1> </div> </div> </div> </template>
<style scoped lang="scss"> ul { display: flex; position: fixed; z-index: 999; margin: auto; left: 50%; li { cursor: pointer; padding: 10px 20px; } } h1 { margin: 0px; } </style>
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
vue3使用threejs實現(xiàn)3D卡片水平旋轉效果的示例代碼
這篇文章主要介紹了在vue3中使用threejs實現(xiàn)3D卡片水平旋轉效果,文中通過代碼示例講解的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下2024-04-04Vue踩坑之Vue?Watch方法不能監(jiān)聽到數(shù)組或對象值的改變詳解
Vue 提供了一種更通用的方式來觀察和響應 Vue 實例上的數(shù)據(jù)變動:偵聽屬性,下面這篇文章主要給大家介紹了關于Vue踩坑之Vue?Watch方法不能監(jiān)聽到數(shù)組或對象值的改變的相關資料,需要的朋友可以參考下2022-04-04Vue 動態(tài)組件components和v-once指令的實現(xiàn)
這篇文章主要介紹了Vue 動態(tài)組件components和v-once指令的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-08-08vue中調接口的方式詳解this.$api、直接調用、axios
這篇文章主要介紹了vue中調接口的方式:this.$api、直接調用、axios,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-11-11vue和react等項目中更簡單的實現(xiàn)展開收起更多等效果示例
這篇文章主要介紹了vue和react等項目中更簡單的實現(xiàn)展開收起更多等效果示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-02-02vuejs實現(xiàn)ready函數(shù)加載完之后執(zhí)行某個函數(shù)的方法
這篇文章主要介紹了vuejs實現(xiàn)ready函數(shù)加載完之后執(zhí)行某個函數(shù)的方法,需要的朋友可以參考下2018-08-08