html drag api 在firefox 下 拖動出現新窗口的解決辦法


有個功能,需要用drag drop api 來做。

發現在firefox下拖放,會出現新的tab 頁簽,即使在ondragover、ondrop中使用了event.preventDefault也無濟於事,在mozllia上MDN的例子拖動也會彈出新的tab 頁簽。

隨后發現有同事寫的drag drop 在firefox下不會彈出,遂研究起來,發現用的dataTransfer.setData("asdf",""),同事只是用了drag drop的效果,沒有用dataTransfer。我就復制過來在例子中使用,發現,不會彈出新窗口了。

然后再把setData的key 設置為text,tab 頁簽繼續彈出。

原因:

估計是firefox把text設置為了關鍵字,觸發了text就默認打開新窗口,禁用瀏覽器默認功能也沒用。

解決:

把setdata的關鍵字設置除了text以外的任意字段即可。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM