火狐html5拖拽 彈出新頁面解決辦法


       今天做項目時,需要實現一個拖拽排序的功能,遂想到了html5的拖拽,便開始查資料,寫代碼。功夫不復有心人,通過網上資料作參考,排序功能成功實現。谷歌瀏覽器測試,拖拽平滑,無問題。火狐瀏覽器測試時,卻無法拖拽,只能觸發dragstart事件,其它事件卻無法觸發,這讓我很摸不到頭腦。查了查資料,並沒有找到問題所在。后來經過自己不斷的測試,發現火狐瀏覽器中,dragstart事件觸發時,必須設置拖拽數據。

      火狐瀏覽器中,可以正常拖拽了,但一切到這里並有完。火狐中拖拽,每次dragend的時候,都會彈出一個新頁面。其實,這個問題本身並沒有太大影響,但是每次拖拽結束,總彈出一個新頁面,總感覺不是特別好。網上搜了下資料,了解到,通過給body綁定drop事件,並阻止冒牌和默認事件,便可以解決此問題。代碼截圖如下:

注:stopPropagation() 和 preventDefault()兩個方法必須都寫,單寫一個是解決不了問題的。


免責聲明!

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



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