可以拖動的彈出窗口,在很多網頁上都可以見到,非常的人性化,下面通過一段javascript代碼就可以實現彈出拖動窗口,廢話不多說了,直接貼代碼了。
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.jb51.net/" /> <title>可以拖動的彈出窗口</title> <style type="text/css"> #popDiv { position:absolute; visibility:hidden; overflow:hidden; border:2px solid #AEBBCA; background-color:#EEF1F8; cursor:move; padding:1px; } #popTitle { background:#9DACBF; height:20px; line-height:20px; padding:1px; } #popForm { padding:2px; } .title_left { font-weight:bold; padding-left:5px; float:left; } .title_right { float:right; } #popTitle .title_right a { color:#000; text-decoration:none; } #popTitle .title_right a:hover { text-decoration:underline; color:#FF0000; } </style> <script> function showPopup() //彈出層 { var objDiv=document.getElementById("popDiv"); objDiv.style.top="50px";//設置彈出層距離上邊界的距離 objDiv.style.left="200px";//設置彈出層距離左邊界的距離 objDiv.style.width="300px";//設置彈出層的寬度 objDiv.style.height="200px";//設置彈出層的高度 objDiv.style.visibility="visible"; } function hidePopup()//關閉層 { var objDiv=document.getElementById("popDiv"); objDiv.style.visibility="hidden"; } </script> </head> <body> <div id="popDiv"> <div id="popTitle"> <!-- 標題div --> <span class="title_left">修改操作</span> <span class="title_right" onClick="hidePopup()"><a href="#">關閉</a></span> </div> <div id="popForm"></div> </div> <input name="" type="button" onClick="showPopup()" value="操作" /> <script type="text/javascript"> var objDiv=document.getElementById("popDiv"); var isIE=document.all?true:false;//判斷浏覽器類型 document.onmousedown = function(evnt)//當鼠標左鍵按下後執行此函數 { var evnt=evnt?evnt:event; if(evnt.button == (document.all ? 1 : 0)) { mouseD = true;//mouseD為鼠標左鍵狀態標志,為true時表示左鍵被按下 } } objDiv.onmousedown = function(evnt) { objDrag=this;//objDrag為拖動的對象 var evnt=evnt?evnt:event; if(evnt.button == (document.all?1 : 0)) { mx=evnt.clientX; my=evnt.clientY; objDiv.style.left=objDiv.offsetLeft+"px"; objDiv.style.top=objDiv.offsetTop+"px"; if(isIE) { objDiv.setCapture(); } else { window.captureEvents(Event.MOUSEMOVE); } } } document.onmouseup=function() { mouseD=false; objDrag=""; if(isIE) { objDiv.releaseCapture(); } else { window.releaseEvents(objDiv.MOUSEMOVE); } } document.onmousemove=function(evnt) { var evnt=evnt?evnt:event; if(mouseD==true&&objDrag) { var mrx=evnt.clientX-mx; var mry=evnt.clientY-my; objDiv.style.left = parseInt(objDiv.style.left) + mrx + "px"; objDiv.style.top = parseInt(objDiv.style.top) + mry + "px"; mx = evnt.clientX; my = evnt.clientY; } } </script> </body> </html>
以上是本文實現javascript彈出拖動窗口的全部內容,希望對大家有所幫助。