js實(shí)現(xiàn)點(diǎn)擊展開(kāi)隱藏效果(實(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)我用坦蕩、虔誠(chéng)、真情,甚至,袒露心懷來(lái)“奮筆疾書”這樣一份真愛(ài)的時(shí)候,我知道你的愛(ài)或恨已經(jīng)植入我的骨髓,并刻在了心上。當(dāng)真心遇到仁心的時(shí)候,我相信才會(huì)有心心相印一說(shuō)。而面對(duì)一個(gè)人華麗轉(zhuǎn)身的時(shí)候,所謂的真心和仁心再次相碰,濺出的那段激烈的火花,還會(huì)不會(huì)重新燃起一份愛(ài)的承諾?而我一直想用時(shí)間的長(zhǎng)度和寬度來(lái)驗(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效果的全部?jī)?nèi)容,感謝大家對(duì)腳本之家的支持。
相關(guān)文章
JavaScript實(shí)現(xiàn)復(fù)制文本到剪切板功能的方法小結(jié)
這篇文章給大家介紹了三種JavaScript實(shí)現(xiàn)復(fù)制文本到剪切板的方法,Clipboard API,document.execCommand以及useClipboard這三個(gè)接口,文章通過(guò)代碼示例給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11
前端開(kāi)發(fā)過(guò)程中瀏覽器版本的兩種判定方法
前端開(kāi)發(fā)過(guò)程中經(jīng)常需要判斷瀏覽器的版本,達(dá)到同時(shí)兼容多個(gè)瀏覽器的目的,下面有兩種不錯(cuò)的常用方法:jquery及HTML中的注釋,喜歡的朋友可以參考下2013-10-10
JS實(shí)現(xiàn)表單中點(diǎn)擊小眼睛顯示隱藏密碼框中的密碼
這篇文章主要介紹了JS實(shí)現(xiàn)表單中點(diǎn)擊小眼睛顯示隱藏密碼框中的密碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考價(jià)值,需要的朋友可以參考下2020-04-04
JavaScript中iframe實(shí)現(xiàn)局部刷新的幾種方法匯總
Iframe是一種嵌入網(wǎng)頁(yè)的框架形式,Web頁(yè)面可以通過(guò)更改嵌入的部分,達(dá)到部分內(nèi)容刷新,通過(guò)本文和大家一起學(xué)習(xí)iframe實(shí)現(xiàn)局部刷新的幾種方法匯總,對(duì)iframe局部刷新相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧2016-01-01
JavaScript 事件對(duì)象的實(shí)現(xiàn)
前我寫過(guò)一篇關(guān)于JavaScript如何實(shí)現(xiàn)面向?qū)ο缶幊痰奈恼?。今天,我寫這篇文章跟大家討論一下,如何實(shí)現(xiàn)事件。2009-07-07
JavaScript簡(jiǎn)單實(shí)現(xiàn)的仿微博留言功能示例
這篇文章主要介紹了JavaScript簡(jiǎn)單實(shí)現(xiàn)的仿微博留言功能,涉及javascript頁(yè)面元素屬性動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-01-01
JavaScript實(shí)現(xiàn)基于十進(jìn)制的四舍五入實(shí)例
這篇文章主要介紹了JavaScript實(shí)現(xiàn)基于十進(jìn)制的四舍五入的方法,實(shí)例分析了javascript針對(duì)數(shù)值判斷與相關(guān)運(yùn)算技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07

