Ho un div su una pagina HTML e ogni volta che premo il mouse e lo sposto, mostrerà che il cursore "non può cadere" come seleziona qualcosa. C'è un modo per disabilitare la selezione? Ho provato CSS user-select con none senza successo.Previene la selezione in HTML
risposta
Le variazioni di proprietà di user-select
lavoreranno nella maggior parte dei browser moderni:
*.unselectable {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
Per IE < 10 e Opera, è necessario utilizzare l'attributo unselectable
dell'elemento che si desidera essere selezionabile. È possibile impostare questo utilizzando un attributo in HTML:
<div id="foo" unselectable="on" class="unselectable">...</div>
Purtroppo questa proprietà non è ereditata, significa che è necessario mettere un attributo nel tag di inizio di ogni elemento all'interno del <div>
. Se questo è un problema, si potrebbe invece utilizzare JavaScript per fare questo in modo ricorsivo per i discendenti di un elemento:
function makeUnselectable(node) {
if (node.nodeType == 1) {
node.setAttribute("unselectable", "on");
}
var child = node.firstChild;
while (child) {
makeUnselectable(child);
child = child.nextSibling;
}
}
makeUnselectable(document.getElementById("foo"));
Hai una sorta di immagine trasparente che la vostra selezione? Solitamente l'icona "non rilascia" appare quando si trascina un'immagine. Altrimenti normalmente seleziona il testo quando si trascina. Se è così potresti dover mettere l'immagine dietro tutto usando z-index.
Io uso cancelBubble=true
e stopPropagation()
nel mouse in basso e spostare i gestori.
Quello che mi ha impedito era che ne hai bisogno in _both_ il mouse verso il basso e muovere i gestori, non solo quello di movimento! –
E 'sembrare facile da selezionare CSS non impediscono immagine drag and drop ... così ..
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;
});
});
Possiamo usare questo codice predefinito per tutte le immagini? –
Puoi usare il selettore "img" ma fai attenzione con "event.preventDefault();" perché nessun altro evento associato a "mousedown" funzionerà su di essi nella tua pagina ... – molokoloco
event.preventDefault()
sembra fare il trucco (testato in IE7-9 e 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);
});
});
Grazie per questo, cercato per un po 'sul modo corretto di bloccare un elenco I selezionato che stavo bloccando al clic, poiché i valori disabilitati non post ..... haha – thekevshow
- 1. Previene la selezione dell'ordinamento automatico
- 2. Previene la virtualizzazione UAC?
- 3. Ottieni la selezione della pagina incluso HTML?
- 4. come nascondere la selezione del pulsante HTML?
- 5. Previene collegamenti ipertestuali in e-mail HTML (ovvero Outlook)
- 6. Previene la cartella "MATLAB" in Documenti
- 7. Inserisci HTML dopo una selezione
- 8. Selezione di una directory principale in html
- 9. coppie Selezione di elementi HTML in jQuery
- 10. Previene la selezione del testo per i clic rapidi dei pulsanti
- 11. Previene "Resume" per la mia applicazione Cocoa?
- 12. Previene la cattura dello schermo con DirectX
- 13. Previene re-init in ajax
- 14. Previene la visualizzazione di caratteri Emoji
- 15. Previene la cancellazione della riga DataGrid
- 16. Opzione di selezione HTML con EJS
- 17. HTML opzione Definisci cosa selezione è attiva
- 18. Previene la categoriaAxis etichette da sovrapposizione in LineChart
- 19. Previene/annulla la chiusura della fase primaria in JavaFX 2.2
- 20. Previene selezioni multiple dello stesso valore
- 21. Selezione di commenti HTML con jQuery
- 22. Conservazione dello spazio bianco in un'opzione di selezione HTML
- 23. Previene UIAlertController per respingere
- 24. come abilitare la selezione di più file immagine in IE in php html?
- 25. JCrop - Impossibile spostare la selezione
- 26. Previene MicrosoftAjaxWebForms.debug.js dal caricamento
- 27. Dividi la selezione in linee in PHPStorm
- 28. UITableViewController - disabilita la selezione
- 29. Previene errori di codifica in Python
- 30. Come impostare la famiglia di caratteri nell'elenco di selezione a discesa HTML in IE?
Ah, sembra che Firefox 3.6 funzioni solo con il prefisso -moz-. – Tower
non è selezionato ma è ancora copiato negli appunti (secondo le specifiche MDC su http://goo.gl/5P8uH) – ithkuil
@ithkuil: interessante. Sembra che "-moz-none" sia la strada da percorrere. Correggerò la mia risposta –