Saya harus meletakkan gambar di halaman saya. Saya ingin menonaktifkan menyeret gambar itu. Saya mencoba banyak hal tetapi tidak membantu. Bisakah seseorang membantu saya ?
Saya tidak ingin menyimpan gambar itu sebagai gambar latar karena saya mengubah ukuran gambar.
Jawaban:
Anda bisa menyukai ini ...
Melihatnya berfungsi (atau tidak bekerja, lebih tepatnya)
Sepertinya Anda menggunakan jQuery.
sumber
$(document)
alih-alih$(window)
$('img').on('dragstart', false);
The value false is also allowed as a shorthand for a function that simply does return false.
Hanya solusi CSS: gunakan
pointer-events: none
https://developer.mozilla.org/en-US/docs/CSS/pointer-events
sumber
img
.tambahkan saja draggable = "false" ke tag gambar Anda:
Namun IE8 dan di bawah tidak mendukung.
sumber
sumber
solusi lintas browser paling sederhana adalah
masalah dengan
adalah bahwa itu tidak berfungsi di firefox
sumber
Saya menggunakannya di situs web saya di http://www.namdevmatrimony.in/ Ini berfungsi seperti sihir !!! :)
sumber
Saya mencoba sendiri dan ternyata ini berhasil.
Saya yakin ini menonaktifkan seret dari semua gambar. Tidak yakin itu memengaruhi sesuatu yang lain.
sumber
<a>
tag? Lalu jika pengguna mengklik gambar, tautan tidak akan diklik.Lihat jawaban ini ; di Chrome dan Safari Anda dapat menggunakan gaya berikut untuk menonaktifkan penyeretan default:
Kamu bisa mencoba pengguna untuk Firefox dan IE (10+):
sumber
Anda dapat menambahkan berikut ini ke setiap gambar yang tidak ingin Anda tarik, (di dalam
img
tag):misalnya
sumber
Kode ini melakukan apa yang Anda inginkan. Ini mencegah gambar menyeret sambil memungkinkan tindakan lain yang bergantung pada acara.
sumber
Langsung gunakan ini:
ondragstart="return false;"
di tag gambar Anda.Jika Anda memiliki banyak gambar, bungkus dengan
<div>
tag:Bekerja di semua browser utama.
sumber
Karena gambar saya dibuat menggunakan ajax, dan karenanya tidak tersedia di windows.load.
$("#page").delegate('img', 'dragstart', function (event) { event.preventDefault(); });
Dengan cara ini saya dapat mengontrol bagian mana yang memblokir perilaku, hanya menggunakan satu peristiwa yang mengikat dan berfungsi untuk gambar ajax yang dibuat di masa depan tanpa harus melakukan apa pun.
Dengan jQuery new
on
binding:$('#page').on('dragstart', 'img', function(event) { event.preventDefault(); });
(terima kasih @ialphan)sumber
img
elemen tak terbatas , sekarang atau masa depan. Paling tidak intensif, paling kuat.sumber
Solusi hebat, punya satu masalah kecil dengan konflik, Jika ada orang lain yang memiliki konflik dari perpustakaan js lainnya cukup memungkinkan tidak ada konflik seperti itu.
Semoga ini bisa membantu seseorang.
sumber
Yah saya tidak tahu apakah jawaban di sini telah membantu semua orang atau tidak, tapi inilah trik CSS inline sederhana yang pasti akan membantu Anda untuk menonaktifkan menyeret dan memilih teks pada halaman HTML.
Pada
<body>
tag Anda, tambahkanondragstart="return false"
. Ini akan menonaktifkan penarikan gambar. Tetapi jika Anda juga ingin menonaktifkan pemilihan teks maka tambahkanonselectstart="return false"
.Kode akan terlihat seperti ini:
<body ondragstart="return false" onselectstart="return false">
sumber
Anda dapat mempertimbangkan solusi saya yang terbaik. Sebagian besar jawaban tidak kompatibel dengan browser lama seperti IE8 karena e.preventDefault () tidak akan didukung serta acara ondragstart . Untuk melakukannya lintas peramban yang kompatibel Anda harus memblokir mousemove acara untuk gambar ini. Lihat contoh di bawah ini:
jQuery
tanpa jQuery
diuji dan bekerja bahkan untuk IE8
sumber
Setel properti CSS berikut ke gambar:
sumber
Yah, ini mungkin, dan jawaban lain yang diposting benar-benar valid, tetapi Anda bisa mengambil pendekatan brute force dan mencegah perilaku default
mousedown
pada gambar. Yang mana, adalah mulai menyeret gambar.Sesuatu seperti ini:
sumber
Berfungsi dalam Plunker ini http://plnkr.co/edit/HbAbJkF0PVLIMjTmEZml
sumber
jQuery:
Anda dapat mengganti pemilih tubuh dengan wadah lain yang tidak ingin diseret dan dijatuhkan oleh anak-anak.
sumber
Anda dapat menggunakan kode sebaris untuk ini
Dan opsi kedua adalah menggunakan css eksternal atau on-page
Keduanya Bekerja dengan Benar Saya menggunakan css eksternal di situs ini (Klik Di Sini)
sumber
Jawabannya sederhana:
<body oncontextmenu="return false"/>
- Nonaktifkan klik kanan<body ondragstart="return false"/>
- Nonaktifkan dragging mouse<body ondrop="return false"/>
- Nonaktifkan drop mousesumber
Saya melakukan properti css yang ditampilkan di sini dan memonitor ondragstart dengan javascript berikut:
sumber
Mencuri jawaban saya sendiri , tambahkan saja elemen yang benar-benar transparan dengan ukuran yang sama di atas gambar. Saat Anda mengubah ukuran gambar, pastikan untuk mengubah ukuran elemen.
Ini harus bekerja untuk sebagian besar browser, bahkan yang lebih lama.
sumber