
具體代碼如下所示:
$("#showTitle").mousedown(function (e) { vbool = true; vHeight = e.pageY; vWidth = e.pageX; cHeight = vHeight - $("#show").offset().top; cWdith = vWidth - $("#show").offset().left; //alert("divshow" + $("#show").offset().top + " divvHeight" + vHeight); //alert("高" + cHeight + " 寬" + cWdith); }) $(document).mouseup(function () { vbool = false; }) var showWidth = $("#show").width(); var showHeight = $("#show").height(); var documentWidth = $(document).width(); var documentHeight = $(document).height(); $(document).mousemove(function (e) { if (vbool) { var divheight = e.pageY - cHeight;//窗口要移動(dòng)到的位置 var divwidth = e.pageX - cWdith;//窗口要移動(dòng)到的位置 $("#la1").text(divheight + "w" + divwidth + "win" + showWidth + " x " + documentWidth + "" + showWidth); if (divwidth < 0) { divwidth = 0; } if (divheight < 50) { divheight = 50; } if (divwidth > documentWidth - showWidth) { divwidth = documentWidth - showWidth - 5; } if (divheight > documentHeight - showHeight) { divheight = documentHeight - showHeight - 5; } $("#show").css({ "left": divwidth, "top": divheight }); } })下面看下jQuery 鼠標(biāo)拖拽移動(dòng)窗口的實(shí)現(xiàn)代碼
拖拽移動(dòng)需要注意的是:拖拽移動(dòng)的窗口是如何定位的,如果"left"屬性為"%" ,以"margin-left"來計(jì)算定位,如下實(shí)例,如果"left"屬性為數(shù)字,直接使用"left"即可。
// 彈窗模塊拖拽拖動(dòng)$(function(){ var _move=false;//移動(dòng)標(biāo)記 var _x,_y;//鼠標(biāo)離控件左上角的相對(duì)位置 var _dragZone = $(".M_boxCenter .M_boxBody > h3"); var _dragBody = _dragZone.parent(); _dragZone.mousedown(function(e){ $(this).attr("onselectstart", "return false"); //禁雙擊選中 $("body").css({"-webkit-user-select":"none", "-moz-user-select":"none", "-ms-user-select":"none", "-khtml-user-select":"none", "user-select":"none"}); //禁止選中文字 _move=true; _x=e.pageX-parseInt(_dragBody.css("margin-left")); _y=e.pageY-parseInt(_dragBody.css("margin-top")); _dragBody.fadeTo(150, 0.5); }); $(document).mousemove(function(e){ if(_move){ var x=e.pageX-_x;//移動(dòng)時(shí)根據(jù)鼠標(biāo)位置計(jì)算控件左上角的絕對(duì)位置 var y=e.pageY-_y; if(e.pageX <= 0 || e.pageY <= 0){ _move=false; }else { _dragBody.css({marginLeft:x, marginTop:y});//控件新位置 } } }).mouseup(function(){ _move=false; _dragBody.fadeTo("fast", 1); $("body").removeAttr("style"); //移除不能選文字 });});以上所述是小編給大家介紹的jQuery窗口拖動(dòng)功能的實(shí)現(xiàn)代碼,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注