html5拖放居中,html5实现本页面元素拖放和本地文件拖放

拖放本页面数据

.box {

width: 400px;

height: 400px;

}

#box2 {

float: left;

background-color:black;

}

#box1 {

float: left;

background-color: #cccccc;

}

xk.png

var box1Div,box2Div, msgDiv, imgDiv1;

window.onload = function() {

box1Div = document.getElementById("box1");

box2Div = document.getElementById("box2");

msgDiv = document.getElementById("msg");

imgDiv1 = document.getElementById("img1");

/*box1Div.ondragenter = function(e){//当拖曳元素进入目标元素的时候触发的事件,此事件作用在目标元素上

showObj(e);

}*/

box1Div.ondragover = function(e) { //拖拽元素在目标元素上移动的时候触发的事件,此事件作用在目标元素上

e.preventDefault();

}

box2Div.ondragover = function(e) { //拖拽元素在目标元素上移动的时候触发的事件,此事件作用在目标元素上

e.preventDefault();

}

imgDiv1.ondragstart = function(e) { //当拖拽元素开始被拖拽的时候触发的事件,此事件作用在被拖曳元素上

e.dataTransfer.setData("imgId", "img1");

}

box1Div.ondrop = dropImghandler; //被拖拽的元素在目标元素上同时鼠标放开触发的事件,此事件作用在目标元素上

box2Div.ondrop = dropImghandler;

}

function dropImghandler(e) {

showObj(e.dataTransfer);

e.preventDefault();

//创建节点

var img = document.getElementById(e.dataTransfer.getData("imgId"));

e.target.appendChild(img);

}

function showObj(obj) {

var s = "";

for(var k in obj) {

s += k + ":" + obj[k] + "
";

}

msgDiv.innerHTML = s;

}

页面元素拖放效果:

1b1258eca5f980b252cc7fdb7184f7fe.png

5f183a8fc19ff7cebdd8d0bda5c86fed.png

97231ca87918b5e6ec90c8ca4cc8b64a.png

html5实现本地文件拖放

拖放本地数据

#imgContainer{

background-color: #CCCCCC;

width: 500px;

height: 500px;

}

var imgContainer;

var msgDiv;

window.onload = function(){

imgContainer = document.getElementById("imgContainer");

msgDiv = document.getElementById("msg");

imgContainer.ondragover = function(e){

e.preventDefault();

}

imgContainer.ondrop = function(e){

e.preventDefault();

var fileObj = e.dataTransfer.files[0];

var fileReader = new FileReader();

fileReader.onload = function(e){

showObj(e.target);

imgContainer.innerHTML = "%22+e.target.result+%22"

}

fileReader.readAsDataURL(fileObj);

}

}

function showObj(obj) {

var s = "";

for(var k in obj) {

s += k + ":" + obj[k] + "
";

}

msgDiv.innerHTML = s;

}

本地文件拖放效果:

dcb681d6ec8cd64c8956a2b47ba21723.png

c95a997dfd35584e5735e264a9a0a3be.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值