Pagina 2 di 3

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 15:51
da Zoff
Archimede Pitagorico ha scritto: no, anche io ci avevo pensato. Ele è proprio l'elemento, tant'è che nella pagina web viene passato come this e non come nomeElemento. E poi tante altre istruzioni simili con quella sintassi nella stessa function funzionano bene... Che rompicapo! Via js si può sicuramente (lo dice anche FF) eppure per qualche motivo non mi funge. Sbaglierò il tipo di evento scatenante? La sintassi? Mah... Sono certo che si tratta di una banalità.
Se è proprio l'elemento perché usi getElementById?

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 15:56
da menelicte
a me su FF la sintassi

Codice: Seleziona tutto

input.setAttribute("autocomplete", "off");
fa il suo sporco (è il caso di dirlo) lavoro
a sto punto pubblica il codice che te lo rubiamo proviamo a darti una mano   ;D


EDIT:
Zoff ha scritto:
Archimede Pitagorico ha scritto: Ele è proprio l'elemento
Se è proprio l'elemento perché usi getElementById?
-_-

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 16:01
da Archimede Pitagorico
HAHAHA! Dunque, Zoff, giusta la tua osservazione: ho corretto subito. Ma la situazione non cambia. Eccoti di seguito l'intera funzione che si scatena quando il fuoco passa sul mio controllo. La funzione va, cambia anche l'aspetto. Ma di inibire l'autocomplete, manco per nulla!

Codice: Seleziona tutto

function jsfInpEnt(ele){  
   ele.autocomplete = 'off';
   ele.setAttribute('autocomplete', 'off');
   ele.className = "styTxtBoxAct";
}
Arsenio Lup... Hem volevo dire Menelicte, in quale contesto inserisci quella riga miracolosa che funziona? In che modo la associ al controllo?

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 16:10
da menelicte
prova a commentare la prima istruzione

Codice: Seleziona tutto

function jsfInpEnt(ele){  
   ele.autocomplete = 'off';   // credo che questo dia errore e blocchi l'esecuzione della funzione (la classe Element non ha la proprietà autocomplete)
   ele.setAttribute('autocomplete', 'off');
   ele.className = "styTxtBoxAct";
}
EDIT: ma hai detto che va e ti cambia l'aspetto... uhm...

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 16:15
da Archimede Pitagorico
Si, cambia correttamente lo sfondo, quindi presumo che solo le istruzioni relative all'autocomplete non vadano.

Ele non contempla autocomplete? Ottimo! Grazie per la dritta, ormai siamo vicini alla soluzione. Quindi... Dicevamo, come far funzionare la tua riga? Come integrarla correttamente nella mia function?

Grazie ancora

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 16:23
da menelicte
allora...
ho provato ad applicare quell'istruzione a un elemento preesistente e ad uno creato con javascript ed è andato tutto liscio.

Sei sicuro che ele sia un input?
inserisci un

Codice: Seleziona tutto

alert(ele.tagName); 
nel codice per controllare

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 16:29
da Archimede Pitagorico
Si. Modificando il mio codice come ti indico sotto, sono eseguite solo le ultime due istruzioni. ovvero la casella cambia colore e compare un alert INPUT. Ma la prima istruzione non si esegue, e scrivendo una lettera nel campo si continua ad attivare l'autocompletamento. Come modificare quella prima riga galeotta?

Codice: Seleziona tutto

function jsfInpEnt(ele){  
   ele.setAttribute('autocomplete', 'off');
   ele.className = "styTxtBoxAct";
   alert(ele.tagName);
}

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 16:49
da menelicte
Archimede Pitagorico ha scritto: Si. Modificando il mio codice come ti indico sotto, sono eseguite solo le ultime due istruzioni. ovvero la casella cambia colore e compare un alert INPUT. Ma la prima istruzione non si esegue, e scrivendo una lettera nel campo si continua ad attivare l'autocompletamento. Come modificare quella prima riga galeotta?

Codice: Seleziona tutto

function jsfInpEnt(ele){  
   ele.setAttribute('autocomplete', 'off');
   ele.className = "styTxtBoxAct";
   alert(ele.tagName);
}
Ho fatto un altro tentativo e sull'evento onfocus non funziona manco a me.
Prova a inserire l'istruzione in qualche altra parte del codice

A parte tutto sto discorso... hai pensato alla possibilità di usare una textarea invece di un input?

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 17:06
da Archimede Pitagorico
Bene, lasciamo stare onfocus. Tu con quale evento l'avevi provato? Vorrei riprodurre quello che hai fatto tu, in modo da essere certo che funzioni, e poi adattarlo al mio caso pian piano. Nel post dove dicevi che era ok, come lo associavi al controllo? Da quale evento?

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 17:12
da menelicte
Archimede Pitagorico ha scritto: Bene, lasciamo stare onfocus. Tu con quale evento l'avevi provato? Vorrei riprodurre quello che hai fatto tu, in modo da essere certo che funzioni, e poi adattarlo al mio caso pian piano. Nel post dove dicevi che era ok, come lo associavi al controllo? Da quale evento?
ehm all'evento di onclick del form, troppo tardi per i tuoi scopi, ma era solo una prova al volo.

potresti dagli un id "particolare" e inserire l'istruzione

Codice: Seleziona tutto

document.getElementById("particolare").setAttribute("autocomplete","off");
al di fuori delle funzioni o in un'eventuale funzione sensibile all'evento onload del body

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 17:52
da Archimede Pitagorico
Dunque, accade una cosa stranissima.

Se inserisco le istruzioni per l'inibizione in una function situata in un file separato .js, come faccio sempre, funzione tipo

function jsfAutoCompleteStop(){
  document.getElementById("ruolo-box").setAttribute('autocomplete', 'off');
  alert('d');
}

e poi la richiamo dalla pagina html, non funziona. Se invece la inserisco direttamente in html, nell'head, funziona. Stranissimo. Diciamo che per ora ho risolto, anche se avrei preferito inserire il tutto fuori dalla pagina html, nel solito file js, per tenere il codice più pulito.

Grazie comunque!

PS Altro mistero, se inibisco l'intero form su FF l'autocompletamento si inibisce, su Opera no. Per inibirlo ovunque devo dare una istruzione separata per ogni casella del form. Misteri del web... Grazie a tutti!

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 17:58
da menelicte
Archimede Pitagorico ha scritto: Dunque, accade una cosa stranissima.

Se inserisco le istruzioni per l'inibizione in una function situata in un file separato .js, come faccio sempre, funzione tipo

function jsfAutoCompleteStop(){
   document.getElementById("ruolo-box").setAttribute('autocomplete', 'off');
   alert('d');
}

e poi la richiamo dalla pagina html, non funziona. Se invece la inserisco direttamente in html, nell'head, funziona. Stranissimo. Diciamo che per ora ho risolto, anche se avrei preferito inserire il tutto fuori dalla pagina html, nel solito file js, per tenere il codice più pulito.
hai provato a inserirlo al di fuori di tutte le function, ma sempre nel file .js (come prima riga, per esempio) ?
l'effetto dovrebbe essere lo stesso che hai ottenuto con l'inserimento diretto nell'head, ma terresti l'html più pulito.

Re: [Quasi Risolto][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 18:09
da Archimede Pitagorico
Bene. Abbiamo appurato che Menelicte dispone di qualità sovrannaturalli, che gli consentono di conoscere le arcane proprietà del codice.

STRA RISOLTO!

Re: [PIU' RISOLTO DI COSI' NON SI PUO'!][Firefox] Inibire azione Firefox

Inviato: venerdì 21 novembre 2008, 22:01
da Archimede Pitagorico
Mi sembra un incubo... Funziona ovunque tranne che su Safari! Lo so che mi manderete a quel paese, se non lo avete già fatto, ma... Qual'è l'equivalente di autocomplete="off" in Safari? Google non mi è di aiuto!

Grazie! E se potete... Non maledite la mia fantastica combo option.

Re: [PIU' RISOLTO DI COSI' NON SI PUO'!][Firefox] Inibire azione Firefox

Inviato: sabato 22 novembre 2008, 3:45
da menelicte
Archimede Pitagorico ha scritto: Mi sembra un incubo... Funziona ovunque tranne che su Safari! Lo so che mi manderete a quel paese, se non lo avete già fatto, ma... Qual'è l'equivalente di autocomplete="off" in Safari? Google non mi è di aiuto!

Grazie! E se potete... Non maledite la mia fantastica combo option.
è solo il javascript o proprio l'attributo che non è riconosciuto?

Re: [PIU' RISOLTO DI COSI' NON SI PUO'!][Firefox] Inibire azione Firefox

Inviato: sabato 22 novembre 2008, 8:48
da Archimede Pitagorico
Grazie Mene... Anche alle 3 di notte mi assisti nei miei tormenti! No, è l'autocomplete che stavolta non è riconosciuto perché anche se lo inserisco direttamente in html non funziona comunque... In Safari deve esserci qualche "sinonimo" che lo sostituisce. Quale potrebbe essere?

Re: [PIU' RISOLTO DI COSI' NON SI PUO'!][Firefox] Inibire azione Firefox

Inviato: sabato 22 novembre 2008, 11:26
da menelicte
Archimede Pitagorico ha scritto: Grazie Mene... Anche alle 3 di notte mi assisti nei miei tormenti! No, è l'autocomplete che stavolta non è riconosciuto perché anche se lo inserisco direttamente in html non funziona comunque... In Safari deve esserci qualche "sinonimo" che lo sostituisce. Quale potrebbe essere?
Stando a questo link, il sinonimo è "autocomplete"  :-\
Ma su che versione di Safari hai l'autocomplete? A me su Safari per win ( 525.21  ??? ) non esce nessun menu a tendina.
Comunque, tanto per andate a tastoni, prova anche "autocorrect" e "autosave".

Re: [PIU' RISOLTO DI COSI' NON SI PUO'!][Firefox] Inibire azione Firefox

Inviato: sabato 22 novembre 2008, 11:57
da Archimede Pitagorico
525.21 anche io; avevo notato quel link, eppure compare il menù incriminato. Adesso vedo di darti un quadro più completo della situazione.

Re: [PIU' RISOLTO DI COSI' NON SI PUO'!][Firefox] Inibire azione Firefox

Inviato: sabato 22 novembre 2008, 18:38
da Archimede Pitagorico
Giusto per condividere con voi le gioie e i dolori del programmatore, ecco come ho trascorso questo sabato pomeriggio oltretutto con due linee di febbre:

1) Ho creato di sana pianta una pagina web scritta a mano, e provato l'autocomplete ho visto che la disabilitazione avveniva e che questa era cosa buona e giusta
2) Ho creato una pagina jsp di test nella mia web application e fatta girare sotto Tomcat, con le caratteristiche simili alla pagina incriminata, e l'ac non si disabilitava; questa non era cosa buona e giusta
3) Aperta la pagina di cui al punto 2 e visto il relativo sorgente l'ho copiato in un file di testo (due pagine assolutamente uguali si comportano in modo uguale, mi sono detto) e l'ho copiato nella pagina jsp della mia web application
4) Aperte così due pagine dal sorgente assolutamente uguale, ottenuto dopo aver modificato a mano riga per riga, notavo che in una l'ac si disabilitava e nell'altro no; stavo già per scrollarmi la polvere dai sandali ed allontanarmi dal tempio
5) D'un tratto un bagliore mi è apparso e mi sono detto: "Cazzarola! Ma io sto continuando a submittere il form con diversi valori, eppure la lista dell'ac mostra sempre le stesse parole, come se da quando avessi impostato l'ac Safari non tenesse più conto dei valori inseriti
6) Allora mi sono detto, perché non dò un colpo di scudiscio sulla cache di Safari e vedo che accade?

E d'un tratto, come folgore dal cielo, l'autocomplete non c'era più!
(tutte le precedenti battute, senza aver voluto mancare di rispetto al Cielo, ovviamente)

MORALE DELLA FAVOLA (SERIAMENTE):

Safari è davvero intelligente, e distingue l'autocomplete differenziandolo in base al sito, ovvero trattando pagine anche diverse ma di uno stesso dominio allo stesso modo, tenendo in memoria gli stessi valori. Quando invece si cambia il sito (ossia quando aprivo la pagina scritta da me), è come se l'ac usasse solo la lista memorizzata per quel sito. EDIT non è che mi stupisca la differenziazione in base alla pagina, cosa normale per un browser, ma la differenziazione solo per domini diversi e non per singole pagine diverse.

Safari anzi è intelligentissimo: deve aver pensato "tu hai disattivato l'ac, mica mi hai detto di eliminare i valori che avevo già in memoria! Quindi per motivi di sicurezza e pensando di farti cosa gradita, da ora non ne memorizzero più però continuerò a mostrarti la lista dei valori che hai inserito sinora".

Solo quando ho eliminato ogni dato personale, allora non ho visto più nulla.

Questo per farvi capire il motivo che mi spingerà, quando sotto Natale rifarò il mio parco mezzi personale della società che amministro, a tenere solo due terminali. Un Netbook di quelli piccolissimi, con Ubuntu ultima versione, senza XP nemmeno se per averlo io pago al fornitore una differenza di 30 euro che sono spesi meglio in pizzeria con una bella bionda (Ubuntu è fenomenale! Ma io sono sguaiatamente di parte perché già usavo la precedente), e sulla scrivania un Imac.

Windows, adieu!

Re: [PIU' RISOLTO DI COSI' NON SI PUO'!][Firefox] Inibire azione Firefox

Inviato: sabato 22 novembre 2008, 19:06
da Zoff
Archimede Pitagorico ha scritto: Questo per farvi capire il motivo che mi spingerà, quando sotto Natale rifarò il mio parco mezzi personale della società che amministro, a tenere solo due terminali. Un Netbook di quelli piccolissimi, con Ubuntu ultima versione, senza XP nemmeno se per averlo io pago al fornitore una differenza di 30 euro che sono spesi meglio in pizzeria con una bella bionda (Ubuntu è fenomenale! Ma io sono sguaiatamente di parte perché già usavo la precedente), e sulla scrivania un Imac.

Windows, adieu!
Oddio non sono queste cose su cui baserei la scelta di un'acquisto di quel tipo -.-

Personalmente non approvo la filosofia Mac quanto quella MS...
Non vedo di buon occhio un elite che vive nel suo paradiso terreste dell'hardware, che lavora sempre e solo per se stessa...
Per forza che poi non hai problemi di sorta (che poi non è vero) quando sei tu a dirigere la costruzione dei PC dall'hardware...
In questo aspetto è molto più stimabile MS che "apre" il suo software a tutto l'hardware disponibile sul mercato AMD quanto Intel NVidia quanto ATI e più ne ha più ne metta...
Con questo non voglio difendere MS che di ca**te ne ha fatte e ne fa tutt'ora tante...

Scusate lo sfogo...