Bir dosyayı Firefox'ta div
'a bıraktıktan sonra, web sayfası bu dosyaya yeniden yönlendirilecektir. Jquery'nin e.preventDefault()
'u drop
işleyicisinde kullanarak bu yayılımı durdurmaya çalıştım ve başarısız oldu.`drop` olayından sonra yönlendirme nasıl durdurulur?
#test
dosyasına bir dosya atılırsa, this demo adresine bakın, web sayfasını yeniden yönlendirmeyecek, ancak #test1
içine düşecek, nedenini öğrenmek istiyorum. drop
'dan sonra yayılımı önlemek için her zaman işleyicileri dragenter
, dragover
, dragleave
ve drop
'a bağlamalı mıyım?
güncelleme:
Ben html5doctor ilgili bazı ipuçları bulundu:bu elemanda bırakabilirsiniz tarayıcı söylemek gerekirse, yapmamız gereken tüm dragover olayı iptal olduğunu. Ancak, IE farklı davrandığından dolayı, , dragenter olayı için aynı şeyi yapmamız gerekiyor.
Ve Mozilla claims: için kullanılır dragenter
ve dragover
olaylar için
bir dinleyici, yani öğeleri sürüklenen yerleri bırakılabilir geçerli damla hedefleri gösterir.
Ama firefox this demo test #test
çalışır ve #test1
değil, Mozilla bir hata yapmış görünüyor ve html5doctor haklı: Yalnızca Firefox drop
çalışması için dragover
gerekiyor.
Ahh, bir tane buldum. 'Sürükleyici ve dragover etkinlikleri için bir dinleyici geçerli düşüş hedeflerini belirtmek için kullanılır' https://developer.mozilla.org/En/DragDrop/Drag_Operations#Specifying_Drop_Targets. Ama benim demo 'dragenter' olmadan çalışır: http://jsfiddle.net/mKtn2/6/ – Rufus
Teşekkür ederim! Bu, Chrome'da beni deli ediyordu –