這次帶給大家的是jQuery怎麼做出彈跳窗效果,彈跳窗效果是我們專案裡常使用到的,這篇文章就給大家好好分析一下。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>弹窗</title> <script type="text/javascript" src="../jquery-3.2.1.min.js"></script> <style type="text/css"> *{margin: 0px;padding: 0px;} #login{height:300px;width: 300px;border: 1px solid #ddd;position: absolute; } #close{position: absolute;right: 0px;top: 0px;} </style> <script type="text/javascript"> // JS创建一个p标签,也就是节点元素 // window.onload=function(){ // document.createElement('p'); // } // 使用jQuery创建:$('<p>');带尖括号的是创建,不带是选择的意思 $(function(){ // var oDiv=$('<p>'); // $('body').append(oDiv); $('input').click(function(){ var oLogin=$('<p id="login"><p>用户名<input type="text"></p><p>密码<input type="text"></p><p id="close">X</p></p>');//此功能就相当于body中注释的代码 $('body').append(oLogin); oLogin.css('left',($(window).width()-oLogin.outerWidth())/2); oLogin.css('top',($(window).width()-oLogin.outerHeight())/2);//是弹窗能够出现在浏览器的中间 $("#close").click(function(){ oLogin.remove(); }) // jquery 中$()里window不用加引号 // 添加resize()浏览器窗口大小改变 // scroll():滚动条,以下的作用是当滚动条滚动时候,弹窗的位置也不变化 $(window).on("resize scroll",function(){ oLogin.css('left',($(window).width()-oLogin.outerWidth())/2+$(window).scrollLeft()); oLogin.css('top',($(window).width()-oLogin.outerHeight())/2+$(window).scrollTop()); }) }); }); </script> </head> <body> <input type="button" value="点击"> <!-- <p id="login"> <p>用户名<input type="text"></p> <p>密码<input type="text"></p> <p id="close">X</p> </p> --> </body> </html>
用到的點:
jQuery建立:
$('<p>');
彈出視窗的位置:
oLogin.css('left',($(window).width()-oLogin.outerWidth())/2); oLogin.css('top',($(window).width()-oLogin.outerHeight())/2);
當滾動條滾動時候,彈窗的位置變化:
$(window).on("resize scroll",function(){ oLogin.css('left',($(window).width()-oLogin.outerWidth())/2+$(window).scrollLeft()); oLogin.css('top',($(window).width()-oLogin.outerHeight())/2+$(window).scrollTop()); })
相信看了以上介紹你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
相關閱讀:
以上是jQuery怎麼做出彈跳窗效果的詳細內容。更多資訊請關注PHP中文網其他相關文章!