校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > HTML5拖拉上傳文件的簡單實例

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

熱門標簽:電話機器人如何 杭州營銷電銷機器人供應商 飛亞外呼系統 貸款電銷人工和機器人哪個好 百應電銷機器人產業 聯通400電話申請 高德地圖標注賓館位置 電視購物電銷外呼系統 西寧智能外呼系統加盟

在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>

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

標簽:邯鄲 安慶 內蒙古 晉中 煙臺 牡丹江 玉溪 撫州

巨人網絡通訊聲明:本文標題《HTML5拖拉上傳文件的簡單實例》,本文關鍵詞  HTML5,拖拉,上傳,文件,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《HTML5拖拉上傳文件的簡單實例》相關的同類信息!
  • 本頁收集關于HTML5拖拉上傳文件的簡單實例的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 西宁市| 灵武市| 紫阳县| 邳州市| 儋州市| 衡南县| 乐亭县| 平顺县| 正阳县| 万源市| 称多县| 滕州市| 辽中县| 云林县| 紫金县| 青海省| 六枝特区| 图片| 小金县| 海阳市| 伊金霍洛旗| 彰化县| 井陉县| 朝阳县| 平南县| 元氏县| 齐河县| 泰兴市| 西华县| 阳原县| 肇源县| 宝清县| 德令哈市| 宣恩县| 浮山县| 临江市| 桃源县| 遵义市| 资源县| 崇礼县| 沛县|