Mam element div na stronie HTML i za każdym razem, gdy naciskam mysz i poruszam nim, pokaże się, że kursor „nie można upuścić”, jakby coś zaznaczał. Czy istnieje sposób na wyłączenie wyboru? Próbowałem wybierać przez użytkownika CSS bez żadnego sukcesu.
javascript
html
selection
Wieża
źródło
źródło
-moz-none
to, że jest do zrobienia. Poprawię swoją odpowiedź.-moz-none
Wydaje się , że w Firefoksie 5 nie jest automatycznienone
-moz-user-select: none
user-select
zajmuje się tylko tekstem, a nie innymi elementamiWygląda na to, że wybór użytkownika CSS nie zapobiega przeciąganiu i upuszczaniu obrazu ... więc ...
HTML:
<img src="ico.png" width="20" height="20" alt="" unselectable="on" /> Blabla bla blabla
CSS:
* { user-select: none; -khtml-user-select: none; -o-user-select: none; -moz-user-select: -moz-none; -webkit-user-select: none; } ::selection { background: transparent;color:inherit; } ::-moz-selection { background: transparent;color:inherit; }
JS:
$(function(){ $('*:[unselectable=on]').mousedown(function(event) { event.preventDefault(); return false; }); });
źródło
Używam
cancelBubble=true
istopPropagation()
myszy w dół i przesuwam handlerów.źródło
event.preventDefault()
wydaje się działać (testowane w IE7-9 i Chrome):jQuery('#slider').on('mousedown', function (e) { var handler, doc = jQuery(document); e.preventDefault(); doc.on('mousemove', handler = function (e) { e.preventDefault(); // refresh your screen here }); doc.one('mouseup', function (e) { doc.off('mousemove', handler); }); });
źródło
Czy masz jakiś przezroczysty obraz, który wybierasz? Zwykle ikona „nie można upuścić” pojawia się podczas przeciągania obrazu. W przeciwnym razie zwykle zaznacza tekst podczas przeciągania. Jeśli tak, być może będziesz musiał umieścić obraz za wszystkim, używając indeksu z.
źródło