js實(shí)現(xiàn)上下左右彈框劃出效果
效果圖:
圖(1)初始圖
圖(2)點(diǎn)擊“從右側(cè)劃出”
代碼如下:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no"> <title>上下左右彈框劃出效果</title> <style> /*css document*/ body,div,ol,ul,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,p,form,fieldset,legend,input,button,aside{ padding: 0; margin: 0; -webkit-tap-highlight-color:rgba(255,255,255,0);} body { font-family: "Microsoft YaHei"; } .btn button { display: block; width: 240px; line-height: 30px; margin: 20px auto; background-color: #cd0000; color: #fff; text-align: center; outline: none; border: none; cursor: pointer; font-family: "Microsoft YaHei"; } .aside, .aside-overlay { position: fixed; top: 0; right: 0; left: 0; bottom: 0; } .aside { -webkit-transition: visibility .25s; transition: visibility .25s; z-index: 3; visibility: hidden; overflow: hidden; } .aside > div { text-align: center; } .aside.active { -webkit-transition: none; transition: none; visibility: visible; } .aside-overlay { background-color: rgb(0,0,0); opacity: 0; -webkit-transition: opacity .25s; transition: opacity .25s; } .active > .aside-overlay { opacity: .6; } .rightContent { position: absolute; bottom: 0; right: 0; top: 0; left: 40px; background:#fff; -webkit-transition: transform .15s; transition: transform .15s; -webkit-transform:translateX(100%); transform:translateX(100%); } .active > .rightContent { -webkit-transform:translateX(0%); transform:translateX(0%); } .leftContent { position: absolute; bottom: 0; right: 40px; top: 0; left: 0; background:#fff; -webkit-transition: transform .15s; transition: transform .15s; -webkit-transform:translateX(-100%); transform:translateX(-100%); } .active > .leftContent { -webkit-transform:translateX(0%); transform:translateX(0%); } .topContent { position: absolute; bottom: 40px; right: 40px; top: 0; left: 40px; background:#fff; -webkit-transition: transform .15s,top .15s; transition: transform .15s; -webkit-transform:translateY(-100%); transform:translateY(-100%); } .active > .topContent { top: 40px; -webkit-transform:translateY(0%); transform:translateY(0%); } .botContent { position: absolute; bottom: 0; right: 40px; top: 40px; left: 40px; background:#fff; -webkit-transition: transform .15s,bottom .15s; transition: transform .15s; -webkit-transform:translateY(100%); transform:translateY(100%); } .active > .botContent { bottom: 40px; -webkit-transform:translateY(0%); transform:translateY(0%); } </style> </head> <body> <!-- 按鈕 --> <div class="btn"> <button id="rightBtn">從右側(cè)劃出</button> <button id="leftBtn">從左側(cè)劃出</button> <button id="topBtn">從上面劃下</button> <button id="botBtn">從下面劃上</button> </div> <!-- 彈出層 --> <aside id="aside" class="aside"> <i class="aside-overlay hideAside"></i> <div class="rightContent"> 右側(cè)劃出 </div> <div class="leftContent"> 左側(cè)劃出 </div> <div class="topContent"> 從上面劃下 </div> <div class="botContent"> 從上面劃下 </div> </aside> <script type="text/javascript" src="http://cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script> <script type="text/javascript"> $(function(){ var rightBtn = $('#rightBtn'),leftBtn = $('#leftBtn'),topBtn = $('#topBtn'),botBtn = $('#botBtn'); var oAside = $('#aside'); rightBtn.on("click",function(){ $('.leftContent').hide(); $('.topContent').hide(); $('.botContent').hide(); $('.rightContent').show(); oAside.addClass('active'); }); leftBtn.on("click",function(){ $('.rightContent').hide(); $('.topContent').hide(); $('.botContent').hide(); $('.leftContent').show(); oAside.addClass('active'); }); topBtn.on("click",function(){ $('.rightContent').hide(); $('.leftContent').hide(); $('.botContent').hide(); $('.topContent').show(); oAside.addClass('active'); }); botBtn.on("click",function(){ $('.rightContent').hide(); $('.leftContent').hide(); $('.topContent').hide(); $('.botContent').show(); oAside.addClass('active'); }); $('.hideAside').on("click",function(){ oAside.removeClass('active'); }); }) </script> </body> </html>
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!
- js+html5實(shí)現(xiàn)半透明遮罩層彈框效果
- vue.js中toast用法及使用toast彈框的實(shí)例代碼
- js自定義彈框插件的封裝
- 輕松實(shí)現(xiàn)js彈框顯示選項(xiàng)
- vue.js實(shí)現(xiàn)只彈一次彈框
- js重寫(xiě)alert事件(避免alert彈框標(biāo)題出現(xiàn)網(wǎng)址)
- 基于layer.js實(shí)現(xiàn)收貨地址彈框選擇然后返回相應(yīng)的地址信息
- javascript實(shí)現(xiàn)無(wú)法關(guān)閉的彈框
- JavaScript實(shí)現(xiàn)alert彈框效果
- JavaScript封裝彈框插件的方法
相關(guān)文章
每天一篇javascript學(xué)習(xí)小結(jié)(Boolean對(duì)象)
這篇文章主要介紹了javascript中的Boolean對(duì)象知識(shí)點(diǎn),對(duì)Boolean對(duì)象的基本使用方法進(jìn)行解釋,一段很詳細(xì)的代碼介紹,感興趣的小伙伴們可以參考一下2015-11-11簡(jiǎn)單實(shí)現(xiàn)js間歇或無(wú)縫滾動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了如何簡(jiǎn)單便捷的實(shí)現(xiàn)js間歇或無(wú)縫滾動(dòng)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06給Flash加一個(gè)超鏈接(推薦使用透明層)兼容主流瀏覽器
給一個(gè)Flash加一個(gè)超鏈接,原想直接在object外直接套一個(gè)超鏈接即可,試了之后卻發(fā)現(xiàn)不是這么回事2013-06-06JavaScript 替換Html標(biāo)簽實(shí)現(xiàn)代碼
這種技術(shù)被廣泛應(yīng)用于表單驗(yàn)證,語(yǔ)法高亮和危險(xiǎn)字符過(guò)濾中。一段話如果很長(zhǎng),如果不想像下面那樣替換,我們得想些辦法了。2009-10-10js 將圖片連接轉(zhuǎn)換成base64格式的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇js 將圖片連接轉(zhuǎn)換成base64格式的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08js實(shí)現(xiàn)iframe自動(dòng)自適應(yīng)高度的方法
這篇文章主要介紹了js實(shí)現(xiàn)iframe自動(dòng)自適應(yīng)高度的方法,涉及javascript操作iframe框架的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-02-02基于原生js實(shí)現(xiàn)判斷元素是否有指定class名
這篇文章主要介紹了基于原生js實(shí)現(xiàn)判斷元素是否有指定class名,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07three.js簡(jiǎn)單實(shí)現(xiàn)類似七圣召喚的擲骰子
這篇文章主要為大家介紹了three.js簡(jiǎn)單實(shí)現(xiàn)類似七圣召喚的擲骰子示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01