Formularmanager in Opera blocken
snoot
- javascript
Hallo,
ich schreibe das mal unter JS, da ich denke, dass das ganze hiermit zu tun hat.
Und eins vorweg: Es geht NICHT um autocomplete=off!
Folgendes: Opera besitzt einen Formularmanager der aktiv wird, sobald man innerhalb eines Eingabefeldes die Pfeiltaste 'runter' drückt. Der Browser bietet mir dann bspw. meinen hinterlegten Namen oder E-Mailadresse an, um sie in das Feld einzutragen (das hat nichts damit zu tun, was ich bereits früher mal in einem Eingabfeld eingegeben habe!).
Ich möchte das ganze jetzt aber *von der Webseite aus* unterbinden. D.h. wenn ein Besucher auf meiner Seite ist, und in einem Eingabefeld die Pfeiltaste drückt, soll der Formularmanager nicht angezeigt werden (weil es in diesem Fall keinen Sinn macht).
Dass das ganze irgendwie möglich ist, sieht man bspw. bei Google oder Wikipedia. Dort erscheint der Formularmanager nicht, wenn man sich im Suchfeld befindet, einen Text eintippt und mit der Pfeiltaste dann eines der vorgeschlagenen Wörter auswählt. Da ich auf meiner Seite auch Suchvorschläge anbiete, muss ich den Formularmanager hier auch abschalten, da er sonst stört und man keine Vorschläge wählen kann.
Hat jemand eine Idee, wie ich Opera zur Vernunft bringen kann?
Und eins vorweg: Es geht NICHT um autocomplete=off!
Gut, dass du das bereits ausschließen kannst.
Dass das ganze irgendwie möglich ist, sieht man bspw. bei Google oder Wikipedia.
Ja - und man sieht mit einem Werkzeug wie Dragonfly oder Firebug sehr gut woran das liegt.
Hat jemand eine Idee, wie ich Opera zur Vernunft bringen kann?
Ich hätte eine gehabt, aber die hast du bereits mit deinem 2. Satz kategorisch ausgeschlossen - schade, du musst wohl vergeblich weitersuchen.
Ja - und man sieht mit einem Werkzeug wie Dragonfly oder Firebug sehr gut woran das liegt.
Ich hab damit schon geschaut, aber nichts gefunden, was mich weiterbringt :( Kann ich denn irgendwie verfolgen, was genau bei einem Tastendruck passiert?
Hat jemand eine Idee, wie ich Opera zur Vernunft bringen kann?
Ich hätte eine gehabt, aber die hast du bereits mit deinem 2. Satz kategorisch ausgeschlossen - schade, du musst wohl vergeblich weitersuchen.
Ok, was wäre deine Lösung, wenn es meinen 2. Satz nicht gäbe?
Ok, was wäre deine Lösung, wenn es meinen 2. Satz nicht gäbe?
Ja.
Ok, was wäre deine Lösung, wenn es meinen 2. Satz nicht gäbe?
Ja.
Mein Frage war "Hat jemand eine Idee, wie ich Opera zur Vernunft bringen kann?". Du sagst "Ja". Verätst du mir deine Idee auch?
Verätst du mir deine Idee auch?
Einen Zaunpfahl dieser Größe gibt es nicht, aber ich verweise dich gerne nochmal auf den 2. Absatz aus deinem Ausgangsposting.
Verätst du mir deine Idee auch?
Einen Zaunpfahl dieser Größe gibt es nicht, aber ich verweise dich gerne nochmal auf den 2. Absatz aus deinem Ausgangsposting.
Problem besteht mit und ohne autocomplete=off. Was nun?
Verätst du mir deine Idee auch?
Einen Zaunpfahl dieser Größe gibt es nicht, aber ich verweise dich gerne nochmal auf den 2. Absatz aus deinem Ausgangsposting.
Problem besteht mit und ohne autocomplete=off. Was nun?
Dann machst du etwas falsch - bei mir funktioniert das Hinzufügen von autocomplete="off" einwandfrei.
Grade hier z.B. auch im Forum getestet mit dem dem input-Feld für die E-Mail-Adresse.
Dann machst du etwas falsch - bei mir funktioniert das Hinzufügen von autocomplete="off" einwandfrei.
Grade hier z.B. auch im Forum getestet mit dem dem input-Feld für die E-Mail-Adresse.
http://www.youtube.com/watch?v=yJ80PB_qTPU
Sei so nett und probier' das bitte aus: bei mir hat das obere Feld kein Autocomplete, das untere Feld schon. Der Code entspricht 1:1 (mit Ausnahme des zusätzlichen Attributs im ersten Feld) dem des <http://de.selfhtml.org/html/formulare/anzeige/input_text.htm@title=SELFHTML-Beispiels für einzeilige Eingabefelder>.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>Einzeilige Eingabefelder definieren - form, input</title>
</head>
<body>
<h1>Formular für Namenseingabe</h1>
<form action="input_text.htm">
<p>Vorname:<br><input name="vorname" type="text" size="30" maxlength="30" autocomplete="off"></p>
<p>Zuname:<br><input name="zuname" type="text" size="30" maxlength="40"></p>
</form>
<p><a href="../eingabe.htm#felder">zurück</a></p>
</body>
</html>
<input name="vorname" type="text" size="30" maxlength="30" autocomplete="off">
Okay, so wie es aussieht liegt der Fehler darin, dass ich autocomplete in den form-Tag gesetzt hatte, nicht in <input>. Auf SelfHTML heißt es dazu aber
"Sie können es sowohl in einem Form-Tag <form name="form" action="" autocomplete="off"></form> als auch direkt in einem Input-Tag <input name="pass" type="password" autocomplete="off" /> notieren."
Außerdem heißt es (zumindest für Opera 7):
"Opera 7 ignoriert das Attribut autocomplete grundsätzlich und aktiviert den Passwort-Manager."
Von daher ging ich davon aus, dass der Hund wo anders begraben liegt; und auch, weil das Fenster von Opera ganz anders aussieht, als die gewöhnliche Autovervollständigung, welche sich ja gewöhnlich direkt unter dem Eingabefeld befindet.
Ich hoffe jetzt nur, dass das nicht wieder in einem anderen Browser querschießt.
Also recht herzlichen Dank für's "Nachbohren". Da hätte ich in der Tat nie angesetzt.
Damit ist das suggest-Script nach fast 2 Jahren wohl endlich wasserdicht :)
"Opera 7 ignoriert das Attribut autocomplete grundsätzlich und aktiviert den Passwort-Manager."
Opera 7 ist so antik, den verwendet niemand mehr - Opera 9.x ist schon kaum noch anzutreffen.
Ich hoffe jetzt nur, dass das nicht wieder in einem anderen Browser querschießt.
autocomplete="off" im input-Element sollte in allen relevanten Browsern ordentlich funktionieren, sogar im IE6.
autocomplete="off" im input-Element sollte in allen relevanten Browsern ordentlich funktionieren, sogar im IE6.
Aber warum tut es das form-Tag nicht?
autocomplete="off" im input-Element sollte in allen relevanten Browsern ordentlich funktionieren, sogar im IE6.
Aber warum tut es das form-Tag nicht?
Weil autocomplete nicht zum HTML-Standard gehört und HTML5 noch nicht fertig ist. Du kannst nicht davon ausgehen, dass sämtliche Browser einen Standard unterstützen den es nicht gibt.
Im fertigen HTML5 wird autocomplete auf dem form-Element erlaubt sein (oder auch nicht) - bis es so weit ist, wird Opera das vermutlich auch so machen. Aktuell aber noch nicht.
Weil autocomplete nicht zum HTML-Standard gehört und HTML5 noch nicht fertig ist. Du kannst nicht davon ausgehen, dass sämtliche Browser einen Standard unterstützen den es nicht gibt.
Na jut, zumindest scheint es jetzt zu laufen :)
Falls es jemanden interessiert, das komplette Suggest-Script für die eigene Suchfunktion gibt's hier.
Also danke nochmal.
Falls es jemanden interessiert, das komplette Suggest-Script für die eigene Suchfunktion gibt's hier.
Da wird explizit auch gesagt "<input ... autocomplete="off" />" - du musst ernsthaft daran arbeiten, die Kommentare anderer zu lesen :D
Da wird explizit auch gesagt "<input ... autocomplete="off" />" - du musst ernsthaft daran arbeiten, die Kommentare anderer zu lesen :D
Für mich klang das nur nach "du musst autocomplete verwenden", nicht "du musst autocomplete in input statt in form verwenden" ;)
Da wird explizit auch gesagt "<input ... autocomplete="off" />" - du musst ernsthaft daran arbeiten, die Kommentare anderer zu lesen :D
Für mich klang das nur nach "du musst autocomplete verwenden", nicht "du musst autocomplete in input statt in form verwenden" ;)
Und das "<input" stand da zum Spaß :D
<input name="vorname" type="text" size="30" maxlength="30" autocomplete="off">
Okay, so wie es aussieht liegt der Fehler darin, dass ich autocomplete in den form-Tag gesetzt hatte, nicht in <input>.
Diese Information ganz am Anfang und man hätte sich diesen langen Thread sparen können.
Struppi.
Okay, so wie es aussieht liegt der Fehler darin, dass ich autocomplete in den form-Tag gesetzt hatte, nicht in <input>.
Diese Information ganz am Anfang und man hätte sich diesen langen Thread sparen können.
Ist die Frage, ob jemand gewusst hätte, dass form und input unterschiedlich reagieren, obwohl es laut SelfHTML nicht so ist!? ;)
Okay, so wie es aussieht liegt der Fehler darin, dass ich autocomplete in den form-Tag gesetzt hatte, nicht in <input>.
Diese Information ganz am Anfang und man hätte sich diesen langen Thread sparen können.
Ist die Frage, ob jemand gewusst hätte, dass form und input unterschiedlich reagieren, obwohl es laut SelfHTML nicht so ist!? ;)
Wissen hätte es man nicht müssen, aber wenn jemand es probiert hätte, wäre der Unterschied aufgefallen. So mußten die Helfer erst stundenlang rumstochern.
Struppi.
Hallo,
Okay, so wie es aussieht liegt der Fehler darin, dass ich autocomplete in den form-Tag gesetzt hatte, nicht in <input>.
Diese Information ganz am Anfang und man hätte sich diesen langen Thread sparen können.
Ist die Frage, ob jemand gewusst hätte, dass form und input unterschiedlich reagieren, obwohl es laut SelfHTML nicht so ist!? ;)
ich hätte es zwar nicht gewusst, aber ich wäre nie auf die Idee gekommen, das Attribut für das form-Element zu notieren. Rein von der Logik her ist Autocomplete ja schließlich eine Funktion des jeweiligen Textfeldes, nicht des umgebenden Formulars.
Ciao,
Martin
Hi,
Problem besteht mit und ohne autocomplete=off. Was nun?
Bspw. bei Google nachsehen, wie die es machen.
Die nutzen offenbar gar nicht wirklich das Input-Feld für die Texteingabe, das liegt im Hintergrund hinter einem anderen Element.
MfG ChrisB
Bspw. bei Google nachsehen, wie die es machen.
Die nutzen offenbar gar nicht wirklich das Input-Feld für die Texteingabe, das liegt im Hintergrund hinter einem anderen Element.
Bei Wikipedia ist es das "echte Feld" - wenn du mit Dragonfly das autocomplete-Attribut entfernst ist das Feature wie gewohnt aktiv. Wenn du es bei einem beliebigen anderen Feld hinzufügst - z.B. hier im Forum, ist das Feature deaktiviert.
Moin!
Gib den Formularfeldern zufällige Namen und sende diese via versteckter Felder mit oder speichere diese in einer Session.
<input type="text" name="F34344632745725" value="" />
<input type=hidden name="F_Name" value="F34344632745725" />
<?php
if isset($_REQUEST['F_Name'] && $_REQUEST[$_REQUEST['F_Name']])
echo "Name: ".$_REQUEST[$_REQUEST['F_Name']];
}
?>
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix
Gib den Formularfeldern zufällige Namen und sende diese via versteckter Felder mit oder speichere diese in einer Session.
Scherzkeks.
Moin!
Gib den Formularfeldern zufällige Namen und sende diese via versteckter Felder mit oder speichere diese in einer Session.
Ändert leider nichts am Problem :(
Worauf läuft das ganze denn hinaus? Was sollte der Zufallswert bewirken?
Worauf läuft das ganze denn hinaus? Was sollte der Zufallswert bewirken?
Andere Browser ordnen die Autocomplete-Funktion dem Feldnamen zu. Zufälliger Feldname = Kein Autocomplete. Opera abeitet hier aber anders, darum wird das nicht funktionierne.
Grüße,
Opera hat KEIN formularmanger in der standartinstalaltion dabei - was du beim "pfeiltaste unten" siehst sind nur deine notizen :) opera hat notizenfunktion, falls du es übersehen hast.
das lässt sich nicht von der webseite aus beeinflussen.
MFG
bleicher