安裝Popper.js實(shí)現(xiàn)高效彈出內(nèi)容管理實(shí)例代碼
前言

Popper.js 是一個(gè)輕量級的 JavaScript 庫,用于創(chuàng)建動(dòng)態(tài)工具提示、下拉菜單和復(fù)雜的交互式導(dǎo)航欄。
它能夠確保這些元素根據(jù)其觸發(fā)元素的位置準(zhǔn)確顯示,并且能自動(dòng)適應(yīng)屏幕大小的變化。
本文將介紹如何通過 CDN 和 npm 安裝 Popper.js,并提供一些實(shí)現(xiàn)代碼,展示如何使用 Popper.js 創(chuàng)建不同類型的彈出框。
github:https://github.com/floating-ui/floating-ui
官網(wǎng):https://floating-ui.com/
安裝 Popper.js
1. 通過 CDN 安裝
使用 CDN 快速引入 Popper.js。只需在 HTML 文件的 <head> 或 <body> 部分添加以下代碼:
<script src="https://unpkg.com/@popperjs/core@^2.0.0"></script>
通過 npm 安裝
使用 npm 安裝:
npm install @popperjs/core
導(dǎo)入 Popper.js:
import { createPopper } from '@popperjs/core';
實(shí)例代碼
1. 基本工具提示
以下是工具提示示例。當(dāng)用戶將鼠標(biāo)懸停在按鈕上時(shí),工具提示將顯示在按鈕的上方。

示例代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Popper.js 示例 - 工具提示</title>
<script src="https://unpkg.com/@popperjs/core@^2.0.0"></script>
<style>
body { display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background-color: #f4f4f9; }
.tooltip { background-color: #333; color: #fff; padding: 8px 12px; border-radius: 4px; font-size: 14px; visibility: hidden; }
.btn { padding: 12px 24px; font-size: 16px; background-color: #6200ea; color: #fff; border: none; border-radius: 4px; cursor: pointer; transition: background-color 0.3s ease; }
.btn:hover { background-color: #3700b3; }
</style>
</head>
<body>
<button class="btn" id="tooltipButton">懸停我</button>
<div id="tooltip" class="tooltip" role="tooltip">這是一個(gè)工具提示</div>
<script>
const button = document.getElementById('tooltipButton');
const tooltip = document.getElementById('tooltip');
Popper.createPopper(button, tooltip, {
placement: 'top',
});
button.addEventListener('mouseenter', () => {
tooltip.style.visibility = 'visible';
});
button.addEventListener('mouseleave', () => {
tooltip.style.visibility = 'hidden';
});
</script>
</body>
</html>
Popper.createPopper(button, tooltip, { placement: 'top' })
用于將工具提示(tooltip)動(dòng)態(tài)定位到按鈕(button)的頂部,確保工具提示始終與按鈕對齊;
button.addEventListener('mouseenter', ...)
監(jiān)聽鼠標(biāo)懸停事件,當(dāng)鼠標(biāo)移到按鈕上時(shí)顯示工具提示;
button.addEventListener('mouseleave', ...)
監(jiān)聽鼠標(biāo)離開事件,當(dāng)鼠標(biāo)移出按鈕時(shí)隱藏工具提示
2. 下拉菜單
以下是下拉菜單示例。當(dāng)用戶點(diǎn)擊按鈕時(shí),菜單將顯示在按鈕的下方。這里不再貼完整代碼,將彈窗改為下拉即可。

3. 彈出框
以下是彈出框示例。當(dāng)用戶點(diǎn)擊按鈕時(shí),彈出框?qū)@示在按鈕的右側(cè)。

總結(jié)
通過 Popper.js,你可以輕松創(chuàng)建各種動(dòng)態(tài)彈出框、工具提示和下拉菜單。
本文介紹了如何安裝 Popper.js,并提供了三個(gè)實(shí)例代碼,展示了如何使用 Popper.js 實(shí)現(xiàn)不同的功能。
希望這些示例能幫助你更好地理解和使用 Popper.js!
到此這篇關(guān)于安裝Popper.js實(shí)現(xiàn)高效彈出內(nèi)容管理的文章就介紹到這了,更多相關(guān)Popper.js高效彈出內(nèi)容管理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
javascript勻速運(yùn)動(dòng)實(shí)現(xiàn)方法分析
這篇文章主要介紹了javascript勻速運(yùn)動(dòng)實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了JavaScript勻速運(yùn)動(dòng)的具體實(shí)現(xiàn)步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-01-01
微信小程序判斷用戶是否需要再次授權(quán)獲取個(gè)人信息
這篇文章主要介紹了微信小程序判斷用戶是否需要再次授權(quán)獲取個(gè)人信息,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07
echarts實(shí)現(xiàn)中國地圖下鉆進(jìn)入下一級(地圖鉆取)
最近在學(xué)習(xí)echarts,今天就來介紹一下echarts實(shí)現(xiàn)中國地圖下鉆進(jìn)入下一級,具有一定的參考價(jià)值,感興趣的可以了解一下2023-08-08
js實(shí)現(xiàn)導(dǎo)航欄中英文切換效果
本篇文章主要分享了javascript實(shí)現(xiàn)導(dǎo)航欄中英文切換效果的示例代碼,具有很好的參考價(jià)值,下面跟著小編一起來看下吧2017-01-01
Cordova(ionic)項(xiàng)目實(shí)現(xiàn)雙擊返回鍵退出應(yīng)用
這篇文章主要為大家詳細(xì)介紹了Cordova項(xiàng)目實(shí)現(xiàn)雙擊返回鍵退出應(yīng)用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09
JavaScript實(shí)現(xiàn)兩個(gè)數(shù)組的交集
這篇文章主要介紹了JavaScript實(shí)現(xiàn)兩個(gè)數(shù)組的交集,給定兩個(gè)數(shù)組???nums1???和??nums2??返回它們的交集,輸出結(jié)果中的每個(gè)元素一定是唯一的,下文詳細(xì)介紹,需要的小伙伴可以參考一下2022-03-03

