js實(shí)現(xiàn)點(diǎn)擊展開隱藏效果(實(shí)例代碼)
本章給大家介紹用js事件冒泡實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊顯示提示框效果(代碼實(shí)例)。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)你有所幫助。
先看看效果圖:

代碼實(shí)例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>事件冒泡-提示框</title>
</head>
<style>
button {
width: 160px;
height: 30px;
background-color: #ff0000;
color: #fff;
border: 1px solid #000;
}
#prompt{
display: none;
border: 1px solid #000;
padding: 20px;
position: fixed;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);
max-width: 600px;
min-width: 300px;
border-radius: 6px;
background-color: #fff;
}
#prompt #prompt-content h3{
display: flex;
justify-content: space-between;
align-items: center;
margin: 0;
}
#prompt #prompt-content h3 i{
display: inline-block;
width: 26px;
height: 26px;
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADQklEQVRYR7WXWahPURTGf9ccZXpAUu4DkQdFxhKRMSKz0M0YQsiDojwYIykPcuNmzjw9ECFDyiwiU1GEQskcMvZd63Ace599Dveul3//vdZe33f2XtMu4KfUB/YBx4ClwCdbL6+fbsBp4GsB0MKAGxraA2A8cKIc0JsDK4C+wBSgWAS0MNsBth2YDLwpAyI1gCXAVKCi+XsIFIqAZAKwGqiSAHsCDAPO/geJrsBmoFHMx11gMHAzIiBdB2A/0CAB9g1YDCwAvuQgUhNYBYxJ7FkLzAA+aj1OQP/rAUeAVg6gK8BA4FEGEoUWV01itt+BScC6+P4kAemqATuAAQ6g1/ZFB1JIdLGTrBOz+QyMsEz7Y6uLQGSwCJjnAVoOzHHoFEvFsUCTyTugP3DS5SuNgOzHASWOq5JuvQWvjlZ+RHhuAuQZoJy/5TuxEAHtG2VRXMHhZLddyRZgUEIv0J6AMskrWQho81BgG1DJ4ekVUDuxfgHoBShmUiUrATnRPapcR4XE5/gq0NnuPoT/VxqGNgyxDPGRELgKT/DLI6A8JxDtUS4r0l1yEVAalhaZLJKXgGqE0klV0ycqZGo2qqBByUNAfeIQ0D3oFVRudVJByUqgsoH3CHr8bbAQmB+yz0IgDXyWZYcCzyXTrMt6eWQhsMdaZ9LJBquU6nqXgaYOFMVBb2tMThIhAuoFKrFJ0ejWRyOVKdT1lAHxBhTteQ+0BW67GKQRGAlsdfSBO0B7x6TU0TKkqgPosZF4mtT5CPgKznOgTcpMUARs8lz4dUvfD3G9i0Br4Dyg4IuLjruT6dKCe5f1DpeNdMPTCNQFbgDRhBy31eC6MpRWgIJSX9vYYzvRWnypOn4C1YFTdlfJvceBPDVAMaJB1tXC9eZQ2p6LE1CVO+gBeWFvB91/HvFlkHy8tA+9rxNQj99rBcUFoMDSwJFX5FsnqtbskntAOxnJ+WiPkRqL8v1fRU8+vQFqeRxMF4GWwGFH4KmANAuNVBmYjbX5MW6q94WeZiVREIrpUSMTGc60h0UGjKDJJasfMnxr7fqMKwt2Av2Aa4DqgSbeshANKYoHFSHNiqXgSQL6r7RZZk9nZUVZyhpgI6CB9Zf8AAbklp4kaj9vAAAAAElFTkSuQmCC');
background-position: center center;
background-repeat: no-repeat;
-webkit-background-size: cover;
background-size: cover;
}
#prompt #prompt-content p{
text-align: justify;
font-size: 16px;
}
</style>
<body>
<button onclick="promptBox('prompt')">顯示/隱藏 消息框</button>
<div id="prompt">
<div id="prompt-content">
<h3>我是標(biāo)題<i onclick="$('#prompt').hide()"></i></h3>
<hr>
<p>用一輩子時(shí)間去珍藏你,我不知道夠不夠?當(dāng)我用坦蕩、虔誠、真情,甚至,袒露心懷來“奮筆疾書”這樣一份真愛的時(shí)候,我知道你的愛或恨已經(jīng)植入我的骨髓,并刻在了心上。當(dāng)真心遇到仁心的時(shí)候,我相信才會(huì)有心心相印一說。而面對(duì)一個(gè)人華麗轉(zhuǎn)身的時(shí)候,所謂的真心和仁心再次相碰,濺出的那段激烈的火花,還會(huì)不會(huì)重新燃起一份愛的承諾?而我一直想用時(shí)間的長度和寬度來驗(yàn)證,把一個(gè)人藏在心底到底能藏多久?</p>
</div>
</div>
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<script>
/**
* [promptBox 需要點(diǎn)擊執(zhí)行顯示隱藏的按鈕和需要顯示的內(nèi)容添加停止點(diǎn)擊冒泡事件,為document添加點(diǎn)擊隱藏事件]
* @param {[String]} boxId [顯示/隱藏的消息提示框]
*/
function promptBox(boxId) {
// 獲取Id
var boxId = $("#" + boxId);
// 顯示/隱藏
$(boxId).toggle();
// 停止點(diǎn)擊冒泡事件
var e = arguments.callee.caller.arguments[0] || event;
if (e && e.stopPropagation) {
e.stopPropagation();
} else {
window.event.cancelBubble = true;
}
// 顯示/隱藏消息提示框
$(boxId).click(function(event) {
// 停止點(diǎn)擊冒泡事件
var e = arguments.callee.caller.arguments[0] || event;
if (e && e.stopPropagation) {
e.stopPropagation();
} else {
window.event.cancelBubble = true;
}
})
// document點(diǎn)擊隱藏事件,不需要清除冒泡事件
$(document).click(function() {
$(boxId).hide();
})
}
</script>
</body>
</html>
以上就是本次JS效果的全部內(nèi)容,感謝大家對(duì)腳本之家的支持。
相關(guān)文章
JavaScript實(shí)現(xiàn)圖片DIV豎向滑動(dòng)的方法
這篇文章主要介紹了JavaScript實(shí)現(xiàn)圖片DIV豎向滑動(dòng)的方法,涉及javascript操作div層的相關(guān)技巧,需要的朋友可以參考下2015-04-04
如何解決前端筆記本屏幕顯示縮放比例125%,150%對(duì)頁面布局的影響
如果要完整解決該縮放和布局問題,仍需適配,下面這篇文章主要給大家介紹了關(guān)于如何解決前端筆記本屏幕顯示縮放比例125%,150%對(duì)頁面布局的影響,需要的朋友可以參考下2022-11-11
Javascript獲取數(shù)組中的最大值和最小值的方法匯總
比較數(shù)組中數(shù)值的大小是比較常見的操作,下面同本文給大家分享四種放哪廣發(fā)獲取數(shù)組中最大值和最小值,對(duì)此感興趣的朋友一起學(xué)習(xí)吧2016-01-01
BootStrap中的模態(tài)框(modal,彈出層)功能示例代碼
bootstrap中的模態(tài)框(modal),不同于Tooltips,模態(tài)框以彈出對(duì)話框的形式出現(xiàn),具有最小和最實(shí)用的功能集。這篇文章主要介紹了BootStrap中的模態(tài)框(modal,彈出層),需要的朋友可以參考下2018-11-11
layui實(shí)現(xiàn)form表單同時(shí)提交數(shù)據(jù)和文件的代碼
今天小編就為大家分享一篇layui實(shí)現(xiàn)form表單同時(shí)提交數(shù)據(jù)和文件的代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10
JavaScript?中處理?null和?undefined的常見方法
文章介紹了可選鏈操作符(?.)和空值合并操作符(??)的使用方法,并對(duì)比了它們與邏輯非運(yùn)算符(!)的區(qū)別,還討論了使用寬松比較運(yùn)算符(==)和自定義函數(shù)來優(yōu)化判斷的幾種方法,以提高代碼的可讀性和性能,感興趣的朋友跟隨小編一起看看吧2025-01-01
使用JavaScript獲取Django模板指定鍵值數(shù)據(jù)
這篇文章主要介紹了使用JavaScript獲取Django模板指定鍵值數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
JS執(zhí)行控制之節(jié)流模式實(shí)例分析
這篇文章主要介紹了JS執(zhí)行控制之節(jié)流模式,結(jié)合實(shí)例形式分析了節(jié)流模式的功能、原理及相關(guān)使用方法,需要的朋友可以參考下2018-12-12

