Auswahl vor Eingabezeile

Fragen zu HTML, CSS, eigenen Erweiterungen etc.
LDN
Beiträge: 9
Registriert: 21.10.2010, 09:01

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von LDN » 26.10.2010, 14:47

Ach mist zu früh gefreut das funktioniert im Internet Explorer nicht. :|


also die beiden select und das textfeld müssen für mich keine besonderen funktionen haben einfach nur das die chatter was auswählen das dann mit geopstet wird.

ach ja und der text aus den extra feldern sollte ans ende der nachricht weil wenn sie davor sind kann man keine befehle mehr ausführen.

1. FC Keller
Moderator
Beiträge: 866
Registriert: 04.07.2004, 17:10
Wohnort: heimat:// Thüringen.Deutschland.eu/ Zeulenroda
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von 1. FC Keller » 26.10.2010, 14:56

Der Wunsch von Anni ist leider etwas komplizierter da die online-user ja ständig wechseln... und alle User fest eintragen ist wohl auch etwas umständlich (außerdem würde es z.B. keine Gäste abdecken und die liste könnte recht lang werden)
Aber ein weiteres Select und eine Textbox sollten kein Problem sein.
Script:Zeigen

Code: Alles auswählen

function setMessageSelect(){
  if(parent.info.mSelectSet){return;}

  if(!parent.info.document){
    window.setTimeout(setMessageSelect,500);
    return;
  }

  pid=parent.info.document;
  parent.info.sel=pid.createElement('span');
  parent.info.sel.innerHTML='<select name="messageSelect1"><option value=""></option><option value="/f ">/f</option><option value="/comment ">/comment</option><option value="/pm ">/pm</option><option value="@ ">@</option><option value="<font color=#ff0000>">rote Schrift</option></select><select name="messageSelect2"><option value=""></option><option value="wasauchimmer">wasauchimmer</option></select><input type="text" name="messageSelect3" class="input">';
  pid.eingabe.insertBefore(parent.info.sel, pid.eingabe.message);

  parent.info.mSelect=function(evt){
    evt=evt?evt:window.event;
    with(parent.info.document.eingabe){
      message.value=messageSelect1.value+messageSelect2.value+messageSelect3.value+message.value;
      parent.setTimeout("with(parent.info.document.eingabe){if(message.value!=''){submit(); message.value=''; message.focus();}}", 100);
    }
  };
  with(parent.info.document){
    check=0;
    if(typeof addEventListener != "undefined"){
      check=1;
      eingabe.addEventListener("submit", parent.info.mSelect, false);
    }else if(attachEvent){
      check=1;
      eingabe.attachEvent("onsubmit", parent.info.mSelect);
    }
    if(check)parent.info.submitForm=function(a){void(a)};
  }
  parent.info.mSelectSet = true;
}
setTimeout(setMessageSelect,100);
Für Anni wäre ein guter Kompromiss statt des 2. Select vermutlich das Textfeld.. da muss man dann nur einmal den Nick eintragen und er bleibt dann stehen bis man ihn wieder entfernt:
Script:Zeigen

Code: Alles auswählen

function setMessageSelect(){
  if(parent.info.mSelectSet){return;}

  if(!parent.info.document){
    window.setTimeout(setMessageSelect,500);
    return;
  }

  pid=parent.info.document;
  parent.info.sel=pid.createElement('span');
  parent.info.sel.innerHTML='<select name="messageSelect1"><option value=""></option><option value="/f ">/f</option><option value="/comment ">/comment</option><option value="/pm ">/pm</option><option value="@ ">@</option><option value="<font color=#ff0000>">rote Schrift</option></select><input type="text" name="messageSelect2" class="input">';
  pid.eingabe.insertBefore(parent.info.sel, pid.eingabe.message);

  parent.info.mSelect=function(evt){
    evt=evt?evt:window.event;
    with(parent.info.document.eingabe){
      message.value=messageSelect1.value+(messageSelect2.value==''?'':(messageSelect2.value+' '))+message.value;
      parent.setTimeout("with(parent.info.document.eingabe){if(message.value!=''){submit(); message.value=''; message.focus();}}", 100);
    }
  };
  with(parent.info.document){
    check=0;
    if(typeof addEventListener != "undefined"){
      check=1;
      eingabe.addEventListener("submit", parent.info.mSelect, false);
    }else if(attachEvent){
      check=1;
      eingabe.attachEvent("onsubmit", parent.info.mSelect);
    }
    if(check)parent.info.submitForm=function(a){void(a)};
  }
  parent.info.mSelectSet = true;
}
setTimeout(setMessageSelect,100);
Damit man hier nicht nach dem Nick selbst ein Leerzeichen eingeben muss hab ich das mal fest nach dem Inhalt des Textfeldes eingestellt

@LDN: diese beiden versionen müssten auch im IE laufen da der Name nicht nachträglich eingetragen wird sondern direkt per innerHTML. Um Befehle ausführen zu können müsste man halt das Feld leeren

Edit: Damit das Select und das Textfeld dahinter stehen müsste dieser Code verwendet werden:
Script:Zeigen

Code: Alles auswählen

function setMessageSelect(){
  if(parent.info.mSelectSet){return;}

  if(!parent.info.document){
    window.setTimeout(setMessageSelect,500);
    return;
  }

  pid=parent.info.document;
  parent.info.sel=pid.createElement('span');
  parent.info.sel.innerHTML='<select name="messageSelect1"><option value=""></option><option value="/f ">/f</option><option value="/comment ">/comment</option><option value="/pm ">/pm</option><option value="@ ">@</option><option value="<font color=#ff0000>">rote Schrift</option></select>';
  pid.eingabe.insertBefore(parent.info.sel, pid.eingabe.message);
  parent.info.sel2=pid.createElement('span');
  parent.info.sel2.innerHTML='<select name="messageSelect2"><option value=""></option><option value="wasauchimmer">wasauchimmer</option></select><input type="text" name="messageSelect3" class="input">';
  pid.eingabe.insertBefore(parent.info.sel, pid.eingabe.message.nextSibling);

  parent.info.mSelect=function(evt){
    evt=evt?evt:window.event;
    with(parent.info.document.eingabe){
      message.value=messageSelect1.value+message.value+messageSelect2.value+messageSelect3.value;
      parent.setTimeout("with(parent.info.document.eingabe){if(message.value!=''){submit(); message.value=''; message.focus();}}", 100);
    }
  };
  with(parent.info.document){
    check=0;
    if(typeof addEventListener != "undefined"){
      check=1;
      eingabe.addEventListener("submit", parent.info.mSelect, false);
    }else if(attachEvent){
      check=1;
      eingabe.attachEvent("onsubmit", parent.info.mSelect);
    }
    if(check)parent.info.submitForm=function(a){void(a)};
  }
  parent.info.mSelectSet = true;
}
setTimeout(setMessageSelect,100);

anni88
Beiträge: 40
Registriert: 26.10.2010, 11:02
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von anni88 » 26.10.2010, 16:56

Habe den code so eingebaut und das flüstern klappt so richtig gut, sogar so super das ich am überlegen bin das flüsterfenster rauszunehmen. Aber wenn ich zum Beispiel die Schriftfarbe wechseln möchte und zuvor ein name im zweiten feld stand und /farbe auswähle kommt: (16:54) anni ändert seine Schriftfarbe in darkblue>darkblue>.>darkblue. :(

Dazu kommt auch noch der bekannte Fehler von vorhin das sich die Befehle wenn sie vorher ausgewählt wurden nicht mehr absenden lassen nach dem man reconncet gemacht hat. :(

LDN
Beiträge: 9
Registriert: 21.10.2010, 09:01

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von LDN » 26.10.2010, 17:04

Ich stimme dir zu.

alles läuft bestens nur nach reconnect spinnt das rum

anni88
Beiträge: 40
Registriert: 26.10.2010, 11:02
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von anni88 » 26.10.2010, 17:27

mmh wenn ich jetzt flüstere kommt auch nur noch Du flüsterst an anni: darkblue>darkblue>.>darkblue>n dabei dürfte das eigentlich nicht sein hab mich ja neu eingeloggt und nicht reconnect geklickt irgendein Befehl macht wohl immer ärger :(

1. FC Keller
Moderator
Beiträge: 866
Registriert: 04.07.2004, 17:10
Wohnort: heimat:// Thüringen.Deutschland.eu/ Zeulenroda
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von 1. FC Keller » 26.10.2010, 21:53

ich hab die scripts jetzt so hinbekommen dass sie nach dem reconnect keine probleme mehr machen (getestet nur in ff)

@anni: ich hab das schriftfarbe-script in deinem chat so umgeschrieben das es keine schwierigkeiten mehr macht.

Benutzeravatar
hamigra
Beiträge: 567
Registriert: 31.08.2006, 16:02
Wohnort: Werdau
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von hamigra » 26.10.2010, 22:15

Welches? In dem ersten Script erkenne ich keine Änderungen. Und nur das wäre für mich wichtig. Badwordscript habe ich geändert und Script zum ändern der Farbe hab ich weggenommen. Nach reconnect kein Senden der Eingabezeile mehr möglich.
Deutsche Sprache ist Freeware, aber nicht OpenSource! Du darfst sie benutzen, aber nicht verändern.

1. FC Keller
Moderator
Beiträge: 866
Registriert: 04.07.2004, 17:10
Wohnort: heimat:// Thüringen.Deutschland.eu/ Zeulenroda
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von 1. FC Keller » 26.10.2010, 22:37

das erste Script hatte ich vergessen ^^ das sollte jetzt auch laufen.

Benutzeravatar
hamigra
Beiträge: 567
Registriert: 31.08.2006, 16:02
Wohnort: Werdau
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von hamigra » 26.10.2010, 22:58

Geht nicht - FF3.6 und IE8
Klappt solange kein 'reconnect' geklickt wird. Nach klicken auf 'reconnect' bleibt es in der Eingabezeile stehen und mit jeden 'Enter' verdoppelt es sich in der Eingabezeile
Bild
Auch wenn es aus der Eingabezeile entfernt wird und normaler Text geschrieben werden soll erscheint wieder in der Eingabezeile nur der Farbcode.
Deutsche Sprache ist Freeware, aber nicht OpenSource! Du darfst sie benutzen, aber nicht verändern.

1. FC Keller
Moderator
Beiträge: 866
Registriert: 04.07.2004, 17:10
Wohnort: heimat:// Thüringen.Deutschland.eu/ Zeulenroda
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von 1. FC Keller » 26.10.2010, 23:43

hamigras problem hat eine andere ursache als bei anni und wahrscheinlich auch LDN. Bei hamigra wird der Chat in einem Frameset geladen um in der Adress-Zeile nicht die Webkicks-URL anzuzeigen... damit hat das Script offensichtlich ein Problem.. Mal sehn ob ich das auch noch in Griff bekomme.

LDN
Beiträge: 9
Registriert: 21.10.2010, 09:01

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von LDN » 27.10.2010, 04:28

Sehr schön :D

keine probleme mehr beim reconnect. läuft in ff und ie

Aber...

Da der Patz im Eingabeframe ziemlich knapp ist musste ich mit den neuen Elementen ein Zeilenumbruch machen damit es wenigsten ein bischen vernünftig aussieht.
Leider ist der Verlassen-Button nicht da wo er sein soll :cry: Kannst du mir helfen ?

Bild


EDIT: also irgendwie steckt da der wurm drin :shock: grad eben lief es noch im ie jetzt spinnt der schon wieder beim reconnect. so macht das alles kein spass

anni88
Beiträge: 40
Registriert: 26.10.2010, 11:02
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von anni88 » 27.10.2010, 08:12

1. FC Keller hat geschrieben:ich hab die scripts jetzt so hinbekommen dass sie nach dem reconnect keine probleme mehr machen (getestet nur in ff)

@anni: ich hab das schriftfarbe-script in deinem chat so umgeschrieben das es keine schwierigkeiten mehr macht.
Danke jetzt geht alles auch nach dem reconnect. :)

Wäre es möglich noch eine Bezeichnung in die Felder zusetzen ? Für manche Leute ist es vielleicht leichter sich zu merken was sie wo eingeben müssen, wenn sie es sehen.

1. FC Keller
Moderator
Beiträge: 866
Registriert: 04.07.2004, 17:10
Wohnort: heimat:// Thüringen.Deutschland.eu/ Zeulenroda
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von 1. FC Keller » 18.11.2010, 15:49

Ich habe das Script eben nochmal editiert. Es funktioniert nun auch im Frameset. Es war der gleiche Bug wie im Badwordscript und Farbänderungsscript, welche ich bei wktools kürzlich behoben habe.

@LDN: Das mit dem Zeilenumbruch und dem Verlassenbutton ist nicht ganz so einfach da das Eingabeframe in einer Tabelle aufgebaut ist (Verlassenbutton ist in der Tabellen-Zelle Rechts neben dem Eingabeformular).

@anni88: Ich verstehe nicht so ganz wie du das mit der Bezeichnung in den Feldern meinst.
Im Code findest du das:

Code: Alles auswählen

<option value=""></option><option value="/f ">/f</option><option value="/comment ">/comment</option><option value="/pm ">/pm</option><option value="@ ">@</option><option value="<font color=#ff0000>">rote Schrift</option>
Dort ist immer jeweils das hinter value= in den Anführungszeichen was vor dem Text eingefügt wird und das zwischen > und </option> ist der Text der im Feld sichtbar ist... Du kannst dort also als Beschreibung frei eintragen was du willst (wie am Beispiel "rote Schrift" zu sehen).

Benutzeravatar
bine_1
Beiträge: 197
Registriert: 26.05.2011, 20:30

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von bine_1 » 19.11.2011, 22:06

Hallo :-)

Finde dies echt klasse :-D

Kann man auch 2 Kasten machen? Wo im ersten z.B die Befehle drin sind und im 2. Kasten farben ect.
Hab dies ausprobiert in dem ich das doppelt hochlade, eine datei mit Farben und in der anderen Datei Befehle. Aber es wird immer nur ein Kästchen angezeigt.

Kann mir jemand helfen? :)

1. FC Keller
Moderator
Beiträge: 866
Registriert: 04.07.2004, 17:10
Wohnort: heimat:// Thüringen.Deutschland.eu/ Zeulenroda
Kontaktdaten:

Re: Auswahl vor Eingabezeile

Ungelesener Beitrag von 1. FC Keller » 20.11.2011, 15:09

Im zweiten Beitrag auf dieser Seite steht eine Version mit 2 Selects ;-)

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 45 Gäste