jQuery實現(xiàn)的簡單對話框拖動功能示例
本文實例講述了jQuery實現(xiàn)的簡單對話框拖動功能。分享給大家供大家參考,具體如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>www.dbjr.com.cn jquery 拖動</title> <meta name="description" content=""> <meta name="keywords" content=""> <link href="" rel=" rel="external nofollow" stylesheet"> <style> *{margin: 0;padding: 0;box-sizing: border-box;-moz-user-select:none;} body {font: 12px/16px bold 'microsoft yahei,微軟雅黑';} .dragContainer { width: 382px; height: 395px; position: absolute; top: 50%; left: 50%; border: 1px solid red; margin-left: -191px; margin-top: -197.5px; } .dragContainer .dragtitle { width: 100%; height: 35px; border-bottom: 1px solid red; text-align: center; line-height: 35px; } .dragContainer .dragtitle:hover { cursor: move; } .dragContainer .content { width: 100%; height: 360px; } p.buttonGroup { width: 100%; text-align: center; position: absolute; bottom: 0; left: 0; right: 0; padding: 5px; border-top: 1px solid red; } p.buttonGroup input { padding: 5px 10px; color: white; } p.buttonGroup input:hover { cursor: pointer; cursor: hand; } p.buttonGroup input:first-child { margin-left: 25px; background: blue; } p.buttonGroup input.btn2 { margin-left: 15px; background: red; } </style> </head> <body> <div class="dragContainer" id="drag" style="'position:absolute;" > <p class="dragtitle">標題欄</p> <div class="content"></div> <p class="buttonGroup"><input type="button" value="確定"><input type="button" value="取消" class="btn2"></p> </div> <script src="http://cdn.bootcss.com/jquery/2.1.0/jquery.js"></script> <script type="text/javascript"> var mydrag={ mousePoint: {x:0,y:0}, //初始化坐標 drag: function(){ var that=this; //保存當前對象即(mydrag),如果不保存,在mousedown()里訪問不了mydrag這個對象 var targetid=$(".dragtitle"); targetid.mousedown(function(event){ var e=event; var offsetLeft=targetid.offset().left; //當前div的左偏移距離 var offsetTop=targetid.offset().top; //當前div的頂部偏移距離 that.mousePoint.x=e.clientX-offsetLeft;//計算鼠標點擊時離它自己div的橫向距離 that.mousePoint.y=e.clientY-offsetTop; //計算鼠標點擊時離它自己div的縱向距離 $(document).bind('mousemove',move); e.stopPropagation(); }); function move(event){ var e =event; var Left=e.clientX-that.mousePoint.x; //移動后,重新計算左偏移和頂部偏移距離 var Top=e.clientY-that.mousePoint.y; $("#drag").css({'top':Top,'left':Left,'margin':0}); $(document).bind('mouseup',end); e.stopPropagation(); }; function end(event){ var e = event; $(document).unbind('mousemove', move); $(document).unbind('mouseup',end); e.stopPropagation(); }; } } mydrag.drag(); </script> </body> </html>
使用在線HTML/CSS/JavaScript代碼運行工具 http://tools.jb51.net/code/HtmlJsRun測試,運行效果如下:
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery拖拽特效與技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jquery中Ajax用法總結(jié)》、《jQuery表格(table)操作技巧匯總》、《jQuery擴展技巧總結(jié)》、《jQuery常見經(jīng)典特效匯總》、《jQuery動畫與特效用法總結(jié)》及《jquery選擇器用法總結(jié)》
希望本文所述對大家jQuery程序設(shè)計有所幫助。
相關(guān)文章
MultiSelect左右選擇控件的設(shè)計與實現(xiàn)介紹
由于項目中用到左右選擇的控件,網(wǎng)上找了一些相關(guān)的實現(xiàn),基本上有兩個:1、基于JQuery UI的控件2、某個兄弟手寫的一個控件,具體實現(xiàn)如下,感興趣的朋友可以參考下哈2013-06-06Lazy Load 延遲加載圖片的jQuery插件中文使用文檔
Lazy Load 是一個用 JavaScript 編寫的 jQuery 插件. 它可以延遲加載長頁面中的圖片. 在瀏覽器可視區(qū)域外的圖片不會被載入, 直到用戶將頁面滾動到它們所在的位置. 這與圖片預(yù)加載的處理方式正好是相反的2012-10-10JQuery擴展插件Validate—6 radio、checkbox、select的驗證
radio、checkbox、select的驗證其實方法與前面提到?jīng)]有太大的區(qū)別,但問題是錯誤信息會顯示在同一組的第一個元素后面2011-09-09jquery 簡單圖片導(dǎo)航插件jquery.imgNav.js
前幾天某MM要偶幫忙實現(xiàn)栗子汀首頁的圖片導(dǎo)航效果,很簡單而且具有通用性的一個需求,點圖片A切換圖片A相關(guān)的內(nèi)容,點圖片B切換圖片B相關(guān)的內(nèi)容,僅此而已。2010-03-03jQuery實現(xiàn)的一個自定義Placeholder屬性插件
這篇文章主要介紹了jQuery實現(xiàn)的一個自定義Placeholder屬性插件,本文最后附有插件完整源碼,需要的朋友可以參考下2014-08-08