Ho cercato ovunque senza fortuna. Se vai a google.com sull'iPhone quando ti concentri sul campo di ricerca, un po 'di "x" appare completamente a destra e se lo tocchi cancella il valore corrente del campo. Qualcuno sa come realizzare questo?little 'x' nell'input di testo sull'iPhone in mobileSafari?
risposta
Ho usato il menu di sviluppo in Safari e ho cambiato l'agente utente in iPhone. Visualizzazione della fonte su Google, sembra che hanno impostato la loro html come questo:
<div class="gp2">
<input class="gp7" id="query" type="text" name="q" size="30" maxlength="2048" autocorrect="off" autocomplete="off" />
<a class="clear" id="clearQuery" href="#">
<img src="data:image/gif;base64,R0lGODlhAQABAID%2FAMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw%3D%3D" alt="" />
</a>
e stanno usando questo javascript:
function initClearQueryLink(query,clearQuery){
clearQuery.setAttribute("title","Clear");
clearQuery.addEventListener("mousedown",clearQueryBox,true);
query.addEventListener("keyup",_handleClearQueryLink,false)
}
function _handleClearQueryLink(){
var query=document.getElementById("query");
var clearQuery=document.getElementById("clearQuery");
if(clearQuery)
if(query.value.length>0){
clearQuery.style.display="inline";
clearQuery.style.visibility="visible"
} else{
clearQuery.style.display="none";
clearQuery.style.visibility="hidden"
}
}
function clearQueryBox(event){
var query=document.getElementById("query");
var clearQuery=document.getElementById("clearQuery");
query.value="";
clearQuery.style.display="none";
clearQuery.style.visibility="hidden";
hideSuggest();
if(event)event.preventDefault()
}
Una risorsa davvero buona per lo sviluppo web di iPhone è iphonewebdev.
Tuttavia sembra che questa particolare caratteristica non sia parte dell'API di Apple (almeno dalla mia ricerca), piuttosto una pura implementazione javascript/css.
È possibile ricreare con qualcosa di simile:
<script>
window.onload = function() {
var btn = document.getElementById("clear_input");
btn.onclick = function() {
var div = btn.parentNode;
var input = div.getElementsByTagName("input")[0];
input.value = "";
return false;
}
}
</script>
<div>
<input type="text" /><a href="#" id="clear_input">X</a>
</div>
Si dovrebbe acconciare la X di essere un'immagine in modo che si fonde dentro l'ingresso. E ovviamente raccomando caldamente di usare un framework JavaScript, se puoi.
Questo è un tipo speciale di input sviluppato da Apple e non approvato dal W3C. Se lo usi, funziona bene su browser che non lo riconoscono.
<input type="search" name="q" />
Non ci sono altri parametri, compreso il nome di dominio e dei risultati di ricerca in modo che l'utente può utilizzare la cronologia delle ricerche. Google per come usare quelli.
è accettato dal W3C in HTML5: http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html # attr-input-type – Kornel
Il trucco è quello di ascoltare/vincola l'evento sul mouse in questo modo l'evento click non si attiva mai e il tuo elemento di input non perde la concentrazione. Come nell'esempio di google sopra.
E questa è la mia versione jQuery, la nasconde all'inizio, e se l'utente cancella ciò che è stato digitato rimuoverà la 'x'. Inoltre, quando hanno rimosso il testo con il pulsante, nasconde anche la 'x'.
html:
<input type="search" name="search" id="search" />
<a href="#" class="clear_input">X</a>
JavaScript:
$('.clear_input').hide();
$('#search').keyup(function() {
var search = $(this).val().replace(/^\s+|\s+$/g,"");
if (search.length >= 1) {
$('.clear_input').show();
} else {
$('.clear_input').hide();
}
$('.clear_input').click(function() {
$('#search').val('');
$('.clear_input').hide();
});
});
La versione JavaScript è più veloce rispetto alla versione jQuery naturalmente.
jQuery Mobile fornisce questo:
- 1. Trascinare e rilasciare in MobileSafari?
- 2. Ravi Sethi's Little Quilt Language in Haskell
- 3. come disabilitare la selezione automatica di MobileSafari?
- 4. Little/Big Endian
- 5. Big endian o Little endian in rete?
- 6. Discussione combinatore in "The Little Schemer"
- 7. Comportamento corretto del pulsante di tocco per MobileSafari
- 8. Aggiunta di un'immagine/testo del caricatore in Bootstrap X-editable
- 9. Converti stringa esadecimale "little endian" in indirizzo IP in Python
- 10. DICOM Deflated Explicit VR Little Endian (1.2.840.10008.1.2.1.99)
- 11. Little Schemer eqlist? funzione - versione alternativa?
- 12. Big-endian vs. little-endian machines
- 13. The Little Schemer - Da dove cominciare?
- 14. (java) di scrittura nel file di little endian
- 15. Bitshifting on little-endian e big-endian
- 16. Conversione da little-endian a big-endian in ASM
- 17. Come scrivere big endian ByteBuffer su little endian in Java
- 18. Conversione di valori float da big endian a little endian
- 19. Rotazione testo x etichetta nel ggplot
- 20. Significato di X = X [:, 1] in Python
- 21. VS2010 IntelliSense testo interno/modelli di script x-jquery-tmpl
- 22. Come posso disabilitare il contenuto di MobileSafari durante il cambio di orientamento?
- 23. Effetto x = + x in JavaScript
- 24. Struct X in Struct X?
- 25. Come inserire una stringa in un file di testo
- 26. Perché x ** 3 è più lento di x * x * x?
- 27. Supporto Big Endian e Little Endian per l'ordinamento dei byte
- 28. scopo script di shell di x in "x $ VARIABILE"
- 29. Sostituzione di stringhe su un intero file di testo in Python 3.x?
- 30. Cattura Ctrl-X con l'evento KeyDown di una casella di testo in WPF
L'immagine non viene visualizzata per me, dice 1x1 pixel. [Violino] (http://jsfiddle.net/jkMWh/1/) –