jQuery實(shí)現(xiàn)分隔條左右拖動(dòng)功能
本文實(shí)例講述了jQuery實(shí)現(xiàn)分隔條左右拖動(dòng)功能的實(shí)現(xiàn)代碼。分享給大家供大家參考。具體如下:
運(yùn)行效果截圖如下:
具體內(nèi)容如下
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> New Document </title> <script type="text/javascript" src="jquery.min.js"></script> <style type="text/css"> html, body, div { margin: 0; padding: 0; border: 0; -moz-user-select: none; -webkit-user-select: none; } .gf_s { float: left; width: 4px; cursor: e-resize; background-color: #fff; border: #99BBE8 1px solid; } .gf_s_g { float: left; width: 4px; display: none; cursor: e-resize; position: absolute; background-color: #F0F0F0; border: #99BBE8 1px solid; filter: alpha(opacity=60); -moz-opacity: 0.6; -khtml-opacity: 0.6; opacity: 0.6; z-index: 1000; } </style> </head> <body> <div id="divP" style="width:100%; height:100%;"> <div id="divLeft" style="background-color: green; float: left; "></div> <div id="divS" class="gf_s" style="float: left;"></div> <div id="divSG" class="gf_s_g" style="float: left;"></div> <div id="divRight" style="background-color: blue; float: left;"></div> </div> <script type="text/javascript"> var $sliderMoving = false; //兼容各種瀏覽器的,獲取鼠標(biāo)真實(shí)位置 function mousePosition(ev) { if (!ev) ev = window.event; if (ev.pageX || ev.pageY) { return { x: ev.pageX, y: ev.pageY }; } return { x: ev.clientX + document.documentElement.scrollLeft - document.body.clientLeft, y: ev.clientY + document.documentElement.scrollTop - document.body.clientTop }; }; //獲取一個(gè)DIV的絕對(duì)坐標(biāo)的功能函數(shù),即使是非絕對(duì)定位,一樣能獲取到 function getElCoordinate(dom) { var t = dom.offsetTop; var l = dom.offsetLeft; dom = dom.offsetParent; while (dom) { t += dom.offsetTop; l += dom.offsetLeft; dom = dom.offsetParent; }; return { top: t, left: l }; }; //分隔條幽靈左右拖動(dòng)(mousemove) function sliderGhostMoving(e) { $("#divSG").css({ left: mousePosition(e).x - 2, display: "block" }); }; //完成分隔條左右拖動(dòng)(mouseup) function sliderHorizontalMove(e) { var lWidth = getElCoordinate($("#divSG")[0]).left - 2; var rWidth = $(window).width() - lWidth - 6; $("#divLeft").css("width", lWidth + "px"); $("#divRight").css("width", rWidth + "px"); $("#divSG").css("display", "none"); }; function reinitSize() { var width = $(window).width() - 6; var height = $(window).height(); $("#divLeft").css({ height: height + "px", width: width * 0.75 + "px" }); $("#divS").css({ height: height - 2 + "px", width: "4px" }); $("#divSG").css({ height: height - 2 + "px", width: "4px" }); $("#divRight").css({ height: height + "px", width: width * 0.25 + "px" }); } $(document).ready(function () { reinitSize(); $("#divS").on("mousedown", function (e) { $sliderMoving = true; $("divP").css("cursor", "e-resize"); }); $("#divP").on("mousemove", function (e) { if ($sliderMoving) { sliderGhostMoving(e); } }); $("#divP").on("mouseup", function (e) { if ($sliderMoving) { $sliderMoving = false; sliderHorizontalMove(e); $("#divP").css("cursor", "default"); } }); }); $(window).resize(function () { reinitSize(); }); </script> </body> </html>
希望本文所述對(duì)大家學(xué)習(xí)jquery分隔條有所幫助。
- 針對(duì)后臺(tái)列表table拖拽比較實(shí)用的jquery拖動(dòng)排序
- jquery實(shí)現(xiàn)拖動(dòng)效果
- jQuery動(dòng)態(tài)添加可拖動(dòng)元素完整實(shí)例(附demo源碼下載)
- 使用jQuery的easydrag插件實(shí)現(xiàn)可拖動(dòng)的DIV彈出框
- jQuery實(shí)現(xiàn)簡(jiǎn)單的DIV拖動(dòng)效果
- jQuery實(shí)現(xiàn)div隨意拖動(dòng)的實(shí)例代碼(通用代碼)
- jQuery拖動(dòng)元素并對(duì)元素進(jìn)行重新排序
- jQuery實(shí)現(xiàn)移動(dòng)端滑塊拖動(dòng)選擇數(shù)字效果
- jQuery拖動(dòng)布局其結(jié)果保存到數(shù)據(jù)庫(kù)
- jquery實(shí)現(xiàn)拖動(dòng)效果(代碼分享)
相關(guān)文章
詳解JavaScript中jQuery和Ajax以及JSONP的聯(lián)合使用
這篇文章主要介紹了詳解JavaScript中jQuery和Ajax以及JSONP的聯(lián)合使用,jQuery庫(kù)和Ajax異步結(jié)構(gòu)以及JSON數(shù)據(jù)傳輸也是JS日常編程中最常用到的東西,需要的朋友可以參考下2015-08-08jquery中用jsonp實(shí)現(xiàn)搜索框功能
這篇文章主要為大家詳細(xì)介紹了jquery中用jsonp實(shí)現(xiàn)搜索框功能的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10jquery.picsign圖片標(biāo)注組件實(shí)例詳解
這篇文章主要介紹了jquery.picsign 自己封裝的第一個(gè)開(kāi)源組件,需要的朋友可以參考下2018-02-02jQuery根據(jù)ID、CLASS、等獲取對(duì)象的實(shí)例
下面小編就為大家?guī)?lái)一篇jQuery根據(jù)ID、CLASS、等獲取對(duì)象的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-12-12jQuery實(shí)現(xiàn)氣球彈出框式的側(cè)邊導(dǎo)航菜單效果
這篇文章主要介紹了jQuery實(shí)現(xiàn)氣球彈出框式的側(cè)邊導(dǎo)航菜單效果,通過(guò)css樣式控制結(jié)合jQuery響應(yīng)鼠標(biāo)事件動(dòng)態(tài)切換元素樣式實(shí)現(xiàn)提示框效果,非常美觀實(shí)用,需要的朋友可以參考下2015-09-09jQuery Mobile框架中的表單組件基礎(chǔ)使用教程
jQuery Mobile框架主要針對(duì)移動(dòng)端的Web UI設(shè)計(jì),其中豐富的表單組件調(diào)用起來(lái)也是相當(dāng)方便,接下來(lái)就為大家整理了一份jQuery Mobile框架中的表單組件基礎(chǔ)使用教程,需要的朋友可以參考下2016-05-05jquery 插件實(shí)現(xiàn)多行文本框[textarea]自動(dòng)高度
這篇文章主要介紹了jquery 插件實(shí)現(xiàn)多行文本框[textarea]自動(dòng)高度,需要的朋友可以參考下2015-03-03jquery實(shí)現(xiàn)點(diǎn)擊彈出可放大居中及關(guān)閉的對(duì)話(huà)框(附demo源碼下載)
這篇文章主要介紹了jquery實(shí)現(xiàn)點(diǎn)擊彈出可放大居中及關(guān)閉的對(duì)話(huà)框,具有可拖動(dòng)、放大、居中及關(guān)閉等功能,提供了2種對(duì)話(huà)框模式供讀者選擇,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-05-05jQuery綁定事件不執(zhí)行但alert后可以正常執(zhí)行
這篇文章主要為大家解決下為什么jQuery綁定事件不執(zhí)行而alert后可以正常執(zhí)行,需要的朋友可以參考下2014-06-06