国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js實現圖片拖動改變順序附圖

2019-11-20 15:27:26
字體:
來源:轉載
供稿:網友
在web頁面中,需要改變多個元素的位置,可以通過元素拖動來實現。HTML5中加入了一個全局屬性draggable,通過設置true/false來控制元素是否可拖動。

下面以圖片拖動為例,用jQuery來實現:頁面上有多個圖片,把一個圖片拖動到其他兩個圖片中間,就可以將這個圖片的位置插入到兩圖之間。
復制代碼 代碼如下:

<!DOCTYPE html>
<html>
<head>
<style>
.img-div img {
width:200px;
height:200px;
float: left;
}
.img-div {
float: left;
}
.drop-left,.drop-right {
width: 50px;
height: 200px;
float: left;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script>
$(document).ready(function() {

// 正在拖動的圖片的父級DIV
var $srcImgDiv = null;

// 開始拖動
$(".img-div img").bind("dragstart", function() {
$srcImgDiv = $(this).parent();
});

// 拖動到.drop-left,.drop-right上方時觸發的事件
$(".drop-left,.drop-right").bind("dragover", function(event) {

// 必須通過event.preventDefault()來設置允許拖放
event.preventDefault();
});

// 結束拖動放開鼠標的事件
$(".drop-left").bind("drop", function(event) {
event.preventDefault();
if($srcImgDiv[0] != $(this).parent()[0]) {
$(this).parent().before($srcImgDiv);
}
});
$(".drop-right").bind("drop", function(event) {
event.preventDefault();
if($srcImgDiv[0] != $(this).parent()[0]) {
$(this).parent().after($srcImgDiv);
}
});

});
</script>
</head>
<body>
<div class="img-div">
<div class="drop-left"></div>
<img src="http://photos.tuchong.com/38538/f/6864556.jpg" draggable="true">
<div class="drop-right"></div>
</div>
<div class="img-div">
<div class="drop-left"></div>
<img src="http://photos.tuchong.com/349669/f/6695960.jpg" draggable="true">
<div class="drop-right"></div>
</div>
<div class="img-div">
<div class="drop-left"></div>
<img src="http://photos.tuchong.com/349669/f/6683901.jpg" draggable="true">
<div class="drop-right"></div>
</div>
<div class="img-div">
<div class="drop-left"></div>
<img src="http://photos.tuchong.com/349669/f/5121337.jpg" draggable="true">
<div class="drop-right"></div>
</div>
</body>
</html>

dragstart是開始拖動元素的事件,dragover是拖動到元素上方的事件,drop是拖動結束松開鼠標的事件。

draggable="true"表示img元素是可以拖動的,不過實際上img默認就是可拖動的,所以這個屬性也可以去掉,如果要拖動div元素那么就需要設置draggable="true"。

class為drop-left和drop-right的div元素放在圖片的左右側,用于接收其他圖片拖動到這個位置。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阿拉善左旗| 临颍县| 东阳市| 隆化县| 敦煌市| 阜城县| 黔南| 保德县| 隆尧县| 庄河市| 金门县| 吉安县| 原阳县| 福安市| 玛曲县| 龙海市| 黑水县| 惠水县| 大姚县| 商水县| 九台市| 同仁县| 宁波市| 大港区| 霍邱县| 威海市| 晋江市| 六枝特区| 田阳县| 博白县| 大新县| 丽水市| 疏勒县| 鄂伦春自治旗| 浦县| 石河子市| 武邑县| 化隆| 浑源县| 奇台县| 南华县|