就是一個十分簡單的小功能,將一個html界面元素從一個地方拖到另外一個地方(複製或移動)
<!-- 被拖拽元素 :draggable屬性,代表元素可拖拽--> <div id="ma" class="MA" draggable="true"> A股 </div> <!-- 拖拽目標區域 --> <div id="box" class="canvas-box"> </div>
$('#ma').bind('dragstart', function (event) { const ev = event.originalEvent // 存儲拖拽元素的id ev.dataTransfer.setData('targetId', ev.target.id) }) // 注意jquery和js的寫法略有不一樣 $('#box').bind('drop', function (event) { // 禁止冒泡 event.stopPropagation() const ev = event.originalEvent // 獲取被拖拽元素的id const id = ev.dataTransfer.getData('targetId') // 根據id獲取該元素或clone該元素 const node = $('#${id}').clone(true) // clone方法相關參數參見附圖 // const node = document.getElementById(id).cloneNode(true) // node.id = ... node.attr('id', 'newid') ev.target.appendChild(node) ..... })
醬醬,完啦!撒花,撒花!html