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

首頁 > 編程 > HTML > 正文

HTML5拖拉上傳文件的簡單實例

2024-08-26 00:19:20
字體:
來源:轉載
供稿:網友

在HTML5的pc上面實現了相當多的功能,工作中也用到了拖拉上傳,特地記錄下該功能

在拖動目標上觸發事件 (源元素):

ondragstart - 用戶開始拖動元素時觸發

ondrag - 元素正在拖動時觸發

ondragend - 用戶完成元素拖動后觸發

釋放目標時觸發的事件:

ondragenter - 當被鼠標拖動的對象進入其容器范圍內時觸發此事件

ondragover - 當某被拖動的對象在另一對象容器范圍內拖動時觸發此事件

ondragleave - 當被鼠標拖動的對象離開其容器范圍內時觸發此事件

ondrop - 在一個拖動過程中,釋放鼠標鍵時觸發此事件

上代碼

<html lang="en"><head>    <meta charset="UTF-8">    <title>拖拽</title>    <style>        .box{width:800px;height:600px;float:left;}        #box1{background-color:#ccc;}        #box2{background-color:#000;}    </style></head><body>    <div id="box1" class="box"></div>    <div id="box2" class="box"></div>    <img id="img1" src="1.jpg">    <div id="msg"></div></body><script>var box1Div,box2Div,msgDiv,img1; window.onload = function(){    box1Div = document.getElementById('box1');    box2Div = document.getElementById('box2');    msgDiv = document.getElementById('msg');    img1 = document.getElementById('img1');    box1Div.ondragover = function(e){e.preventDefault();}    box2Div.ondragover = function(e){e.preventDefault();}    img1.ondragstart = function(e){e.dataTransfer.setData('imgId','img1');}    box1Div.ondrop = dropImghandler;    box2Div.ondrop = dropImghandler;}function dropImghandler(e){    showObj(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]+"<br/>";}    msgDiv.innerHTML = s;}</script></html>

該功能是可以將圖片拖拉到左右兩個div中的方法,我覺得沒啥用,可以當作哈啤

下面是拖拉上傳代碼,后端PHP獲取到$_FILES之后就可以搞起來了

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>拖放上傳</title>    <style>        #imgContainer{background:#ccc;width:500px;height:500px;}    </style></head><body>    <div id="imgContainer"></div>    <div id="msg"></div></body><script>var imgContainer,msgDiv;window.onload = function(e){    imgContainer = document.getElementById('imgContainer');    msgDiv = document.getElementById('msg');    imgContainer.ondragover = function(e){        e.preventDefault();    }    imgContainer.ondrop = function(e){        e.preventDefault();        var f = e.dataTransfer.files[0];           //這時已經獲取到文件了,具體想要用第幾個文件自己處理,發post請求后端處理就行了!        //下面是圖片獲取到之后顯示在imgContainer中的流程        // var fileReader = new FileReader();        // fileReader.onload=function(){        //  imgContainer.innerHTML = "<img src=/""+fileReader.result+"/">"        // }        // fileReader.readAsDataURL(f);        // showObj(e);   //顯示上傳信息        // showObj(e.dataTransfer.files);    }}function showObj(obj){    var s = '';    for(var k in obj){s += k+":"+obj[k]+"<br/>";}    msgDiv.innerHTML = s;}</script></html>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到HTML教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 虹口区| 昌都县| 马尔康县| 祁门县| 常熟市| 从化市| 佛学| 阳曲县| 衡阳市| 拉萨市| 建阳市| 阳谷县| 佳木斯市| 闻喜县| 静宁县| 陆河县| 汶上县| 清徐县| 三门县| 华坪县| 天镇县| 伊春市| 叙永县| 姚安县| 郎溪县| 闵行区| 福海县| 石柱| 金湖县| 镇江市| 游戏| 昂仁县| 石泉县| 永寿县| 广丰县| 东至县| 怀集县| 华池县| 津南区| 阳朔县| 贵港市|