亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

當我拖過一個項目時,拖放“dragover”事件以捕捉可拖動的父項而不是子項?里面的簡單例子

當我拖過一個項目時,拖放“dragover”事件以捕捉可拖動的父項而不是子項?里面的簡單例子

人到中年有點甜 2022-11-03 15:18:59
我在下面提供的代碼功能齊全。當您將一個項目拖到另一個項目上時,該dragover事件會捕獲并顯示它。要理解我的意思,請在此處親自嘗試:https ://jsfiddle.net/athanasis/oydbrsxt/2/我不喜歡的行為:使用我的代碼,嘗試將任何項目拖到列表中的任何“子內容”或“內容”單詞上。該dragover事件捕獲并顯示該元素的文本,而不是父可拖動 li 元素的文本。Javascript(純):<script>  document.addEventListener('dragover', function (event) { allowDrop(event); }, true);    function allowDrop(ev)     {   el = ev.target;        document.getElementById("result").innerHTML = el.innerHTML;    }    </script>HTML:<div id="result">CLICK AND DRAG ON ANOTHER ITEM</div><ul>Category 1     <li draggable="true">item 1 <span> Content 1 <span> Sub-Content 1</span> </span> </li>    <li draggable="true">item 2 <span> Content 2 <span> Sub-Content 2</span> </span> </li>         <li draggable="true">item 3 <span> Content 3 <span> Sub-Content 3</span> </span> </li>    <li draggable="true">item 4 <span> Content 4 <span> Sub-Content 4</span> </span> </li>    <li draggable="true">item 5 <span> Content 5 <span> Sub-Content 5</span> </span> </li></ul>關于當我拖到任何孩子而不是孩子本身時如何捕捉和顯示父元素的任何想法?
查看完整描述

1 回答

?
米琪卡哇伊

TA貢獻1998條經驗 獲得超6個贊

我們可以向上層級,直到我們對結果感到滿意:


document.addEventListener('dragover', function (event) { allowDrop(event); }, true);

    function allowDrop(ev) 

    {   el = ev.target;

            while ((el.tagName !== "LI") && (el.tagName !== "BODY")) el = el.parentNode;

        document.getElementById("result").innerHTML = el.innerHTML;

    }    


    

小提琴:https ://jsfiddle.net/Lnrt2zx1/


查看完整回答
反對 回復 2022-11-03
  • 1 回答
  • 0 關注
  • 92 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號