1. 程式人生 > >jQuery拖拽改變元素大小

jQuery拖拽改變元素大小

 1 <!DOCTYPE html> 
 2 <html> 
 3 <head> 
 4 <meta charset="utf-8" /> 
 5 <title>jQuery 版“元素拖拽改變大小”原型-柯樂義 </title> 
 6 <script type="text/javascript" src="http://keleyi.com/keleyi/pmedia/jquery/jquery-1.11.1.min.js"></script>
 7 <script type="text/javascript"
> 8 /* 9 * jQuery.Resize 10 * Date: 2014-12-04 11 * http://keleyi.com/ 12 */ 13 $(function () { 14 //繫結需要拖拽改變大小的元素物件 15 bindResize(document.getElementById('kel'+'eyi')); 16 }); 17 18 function bindResize(el) { 19 //初始化引數 20 var els = el.style, 21 //滑鼠的 X 和 Y 軸座標 22 x = y = 0; 23 //邪惡的食指 24
$(el).mousedown(function (e) { 25 //按下元素後,計算當前滑鼠與物件計算後的座標 26 x = e.clientX - el.offsetWidth, 27 y = e.clientY - el.offsetHeight; 28 //在支援 setCapture 做些東東 29 el.setCapture ? ( 30 //捕捉焦點 31 el.setCapture(), 32 //設定事件 33 el.onmousemove = function (ev) { 34 mouseMove(ev || event) 35 }, 36 el.onmouseup
= mouseUp 37 ) : ( 38 //繫結事件 39 $(document).bind("mousemove", mouseMove).bind("mouseup", mouseUp) 40 ) 41 //防止預設事件發生 42 e.preventDefault() 43 }); 44 //移動事件 45 function mouseMove(e) { 46 //宇宙超級無敵運算中... 47 els.width = e.clientX - x + 'px', 48 els.height = e.clientY - y + 'px' 49 } 50 //停止事件 51 function mouseUp() { 52 //在支援 releaseCapture 做些東東 53 el.releaseCapture ? ( 54 //釋放焦點 55 el.releaseCapture(), 56 //移除事件 57 el.onmousemove = el.onmouseup = null 58 ) : ( 59 //解除安裝事件 60 $(document).unbind("mousemove", mouseMove).unbind("mouseup", mouseUp) 61 ) 62 } 63 } 64 </script> 65 <style type="text/css"> 66 #keleyi{ 67 position:absolute; 68 top:0;left:0; 69 width:200px; 70 height:100px; 71 background:#f1f1f1; 72 text-align:center; 73 line-height:16px; 74 border:1px solid #CCC; 75 cursor:move; 76 } 77 </style> 78 </head> 79 80 <body> 81 <div id="keleyi">柯樂義:請按住本灰色區域並拖拽.<a href="http://keleyi.com/a/bjad/yy8jnwqj.htm" target="_blank">原文</a>.本效果支援各種瀏覽器,入Chrome,FireFox,IE,Opera等</div> 82 </body> 83 </html>

相關推薦

jQuery改變元素大小

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 <title>jQuery 版“元素拖拽改變大小”原型-柯樂義 </title>

javascript動畫系列第四篇——改變元素大小

前面的話   拖拽可以讓元素移動,也可以改變元素大小。本文將詳細介紹拖拽改變元素大小的效果實現 原理簡介   拖拽讓元素移動,是改變定位元素的left和top值實現的。而拖拽改變元素大小,則還需要改變元素的寬高 範圍圈定   我們把改變元素大小的範圍圈定在距離相應邊10px的範圍內  

[WPF]改變區域大小

<Window x:Class="WPFTest.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http:/

改變大小例如:瀏覽器的視窗大小改變

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>拖拽改變層大小</title> <style ty

Qt佈局管理QSplitter:設計一個分割視窗功能,整個視窗由三個子視窗組成,各個子視窗之間的大小可隨意改變(註釋詳細)

新建專案,基類選擇“QMainWindow”。 main.cpp中的程式碼: #include "mainwindow.h" #include <QApplication> #include <QSplitter> #include <QTe

UEditor 解決視訊元素改變視訊尺寸時,無法儲存視訊尺寸問題的解決方法

    UEditor雖然強大,但是bug還是蠻多的。比如插入視訊元素後,拖拽視訊去縮放尺寸,編輯器並沒有將實際的尺寸儲存下來。當你點選HTML按鈕檢視原始碼時,width和height還是原來的值,再次點選此按鈕回到正常狀態,縮圖又回到原來的大小了。     翻原

jquery獲取、改變元素屬性值

doc on() element 不同 .html cti 是否 top ack 標簽的屬性稱作元素屬性,在JS裏對應的DOM對象的對應屬性叫DOM屬性。JS裏的DOM屬性名有時和原元素屬性名不同。 1 2 //返回元素指定屬性值 3 var txt1_val=

CSDN-----jquery圖片

JQuery實現拖拽DIV 之前實現的是以純javascript進行圖片拖拽,昨天發現做特效用jquery程式碼量減少了一倍多,實現拖拽的技術難點主要是在拖動結束點的控制,在放棄選擇拖拽目標時要準確的將事件清除掉,否則就會出現滑鼠明明放棄拖拽,目標卻還在移動,學習的小夥伴們最好了解清楚bin

改變DataGridView的行順序

DataGridView並沒有屬性可以設定改變行順序,需要做如下操作,假設改變dataGridView2的行順序, 定義全域性變數記錄最後一次選中的行號: int selectionIdx = 0; 在DragEnter事件中新增如下程式碼: private void dataGri

jQuery 排序(選單,圖片)

無意間看到的一個外掛,引入jquery.min.js,jquery-sort.min.js檔案,網盤地址:https://pan.baidu.com/s/1pSJ0PsVH1uT4mXbf2f0ETg 程式碼如下: <!Doctype html> <html> &

selenium實現瀏覽器截圖,頁面元素

1.實現瀏覽器截圖//呼叫getscreenshotAs方法把當前瀏覽器開啟的頁面進行截圖,儲存到file物件中 File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); t

【叨、校長】Jquery佈局例項-Portal

本例項基於jquery官方框架、和jquery easyui官方UI框架編寫,採用jquery.portal.js,jquery.cookie.js外掛,實現頁面拖拽佈局,自動儲存狀態位置! 線上演示

自定義Jquery外掛

新增節點,修改樣式 $("body").append("<div>123</div>"); $("body div").attr("id","box") $("body div").css({"background":"red","width"

自建JQuery外掛

最近由於業務需要,要有拖拽將頁面上控制元件進行一個排序的調整,網上找的控制元件大多不能完美達到預期效果,就自己做了一個小外掛,也記錄一下,畢竟是第一次寫js外掛 外掛程式碼: /** * Created by linxz on 2018/1/8. */ ;(functi

JQuery外掛使用及下載

16/07/08 UPDATE: A new beta version is now available with some bug corrections. Thanks to Randy for the useful feedback! 29/06/08 UPD

如何DIV邊線並左右自適應改變大小

table row tle urn || bsp prop posit repl //樹圖拉伸 jQuery(function ($){ var doc = $(document), dl = $(".side-tree"), dc

矩形移動,四個角改變大小

http enter pos 變化 tails per posit ems sca 原創是https://blog.csdn.net/liujava621/article/details/30495103,我這裏做了修改,侵權刪。 上幹貨:這裏首先要註意操作四個角的時候,框

左右改變大小

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <titl

JavaScript 滑鼠div 改變大小

轉自: http://www.cnblogs.com/yushang/archive/2013/03/19/2968782.html 想讓div實現拖拽改變大小功能,類似於soso地圖(即現在的騰訊地圖)的看街景時地圖可以拖拽等功能 分析一下,實現這個功能需要:滑鼠按下,滑鼠

JavaScript 在vue頁面下實現滑鼠div改變大小,適用於鷹眼地圖,街景地圖等。

首先看效果,如圖,滑鼠懸浮在地圖的右上角小框中時,提示“拖動調整大小”,可以給小框加個好看的圖示。點選可以進行拖拽。 基於上一篇部落格:https://blog.csdn.net/acoolgiser/article/details/84866426  實現。 程式碼: