Ho una tabella e autorizzo gli utenti a 'selezionare' più righe. Tutto questo viene gestito usando eventi jQuery e alcuni CSS per indicare visivamente che la riga è 'selezionata'. Quando l'utente preme shift, è possibile selezionare più righe. A volte questo causa di evidenziare il testo. C'è comunque per impedirlo?Evita l'evidenziazione del testo Tabella
risposta
C'è una proprietà CSS3 per questo.
#yourTable {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
Peccato che a Internet Explorer non importi nulla. Testato tra 6-8. –
@NathanTaylor Dopo aver cercato su google, troverai un duplicato dove questo è già stato risolto: http://stackoverflow.com/questions/826782/css-rule-to-disable-text-selection-highlighting – Dan
'Validation (CSS 3.0):" moz-none "non è un valore valido per la proprietà" -moz-user-select ". E in effetti, questo non ha funzionato con Firefox finché non ho cambiato' moz-none' in 'none'. – Nolonar
Si può provare con la funzione focus() sul testo selezionato - la selezione scompare.
$('#someEl').focus();
Se si desidera avere il controllo quando gli utenti possono selezionare o meno le parti del tuo sito, è possibile utilizzare questo little jQuery plugin.
jQuery.fn.extend({
disableSelection : function() {
return this.each(function() {
this.onselectstart = function() { return false; };
this.unselectable = "on";
jQuery(this).css('user-select', 'none');
jQuery(this).css('-o-user-select', 'none');
jQuery(this).css('-moz-user-select', 'none');
jQuery(this).css('-khtml-user-select', 'none');
jQuery(this).css('-webkit-user-select', 'none');
});
}
});
e usarlo come:
// disable selection on #theDiv object
$('#theDiv').disableSelection();
In caso contrario, si può semplicemente utilizzare questi attributi CSS all'interno del vostro file CSS come:
#theDiv
{
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
Ho semplicemente rimosso la selezione effettuata utilizzando il tasto Maiusc. Questo potrebbe mostrare un po 'di sfarfallio se
if (event.shiftKey) {
window.getSelection().removeAllRanges()
}
Solo una nota sulla risposta da Cleiton sopra - l'esempio di codice sembra funzionare bene, ma per essere un buon cittadino nel mondo jQuery, si dovrebbe restituire il jQuery oggetto al termine della funzione in modo che sia chainable - una semplice aggiunta di una riga fissa che fino:
jQuery.fn.extend({
disableSelection : function() {
this.each(function() {
this.onselectstart = function() { return false; };
this.unselectable = "on";
jQuery(this).css('-moz-user-select', 'none');
});
return this;
}
});
Cheers, spero che questo è utile.
Lo fa con "return this.each (function() {..." – frontendbeauty
Se si dispone di jQuery UI sulle tue pagine, basta usare
$("element-selector").disableSelection();
Questo non è documentato, ma dovrebbe funzionare se si ha jQuery UI core –
la cosa buona di questa soluzione è che è applicabile anche a IE e replica la funzionalità di soluzioni già citate se si guarda il codice – sksallaj
Si noti che disableSelection() è deprecato nell'interfaccia utente jQuery 1.9 – mar10
::-moz-selection { /* Code for Firefox */
color: black;
background: none;
}
::selection {
color: black;
background: none;
}
da http://www.w3schools.com/cssref/sel_selection.asp
in realtà dalla sezione try-it, dopo aver cambiato i valori.
avviso che il cursore è ancora a forma di 'I' ...
Nota: lo pseudo-elemento :: selection è stato elaborato per i CSS Selectors di Livello 3, ma rimosso prima dello stato della Raccomandazione. Al momento, lo pseudo-elemento :: selection non è in alcuna specifica (tuttavia, potrebbe essere aggiunto nuovamente alle future specifiche CSS). – luk2302
- 1. Evita il puntatore del database in SQL Server
- 2. select2 e dati remoti: valore preimpostato e testo che evita il round-trip del server
- 3. Converti tabella HTML in testo
- 4. Evita di aggiungere tag html
- 5. Testo di intestazione tabella trasformata
- 6. Scheda di testo del laboratorio di report Tabella PDF
- 7. R testo lucido del mouseover per le colonne della tabella
- 8. Beautiful Soup [Python] e l'estrazione del testo in una tabella
- 9. tabella HTML a "testo grafico" per i commenti del codice
- 10. Evita il caricamento ritardato di font-face
- 11. Evita l'allungamento sull'immagine css
- 12. Evita la forma ellittica nel raggio del bordo CSS
- 13. PHP evita il reposting del browser $ _POST all'aggiornamento della pagina?
- 14. css: evita la larghezza del div dall'ampliamento alla larghezza disponibile
- 15. R - Markdown che evita i messaggi di caricamento del pacchetto
- 16. Evita SHOW FIELDS in ActiveRecord
- 17. Evita XmlTextReader da entità espandibili
- 18. Evita l'invio di più moduli
- 19. Evita voci duplicate sull'array Mongoose
- 20. Evita le chiamate ripetute all'interpolazione
- 21. Avvolgere testo in una tabella reportlab?
- 22. Ottieni testo sopra la tabella MS Word
- 23. Tabella HTML (testo) per l'immagine utilizzando C#
- 24. Centra il testo nella cella della tabella
- 25. Evita printStackTrace(); utilizzare una chiamata registratore invece
- 26. Ottieni il testo dagli appunti usando GetText - evita errori negli appunti vuoti
- 27. Animazione del colore del testo
- 28. Evita che l'iphone vada in modalità sospensione
- 29. Evita scrollTop dalla chiamata all'evento di scorrimento
- 30. Evita il debug di informazioni su golang
possibile duplicato di [regola CSS per disabilitare l'evidenziazione selezione testo] (http://stackoverflow.com/questions/826782/css-rule-to- disable-text-selection-highlighting) – Dan