Flüstern mit Popup-Fenster

Fragen zu HTML, CSS, eigenen Erweiterungen etc.
Benutzeravatar
hamigra
Beiträge: 567
Registriert: 31.08.2006, 16:02
Wohnort: Werdau
Kontaktdaten:

Flüstern mit Popup-Fenster

Ungelesener Beitrag von hamigra » 15.09.2011, 16:58

Im alten Forum ist der Thread zum Flüsterfenster.
http://www.wkforum.de/viewtopic.php?p=108343#108343
Thread erstellt von 1FCKeller
Die js-Datei:
Script:Zeigen
var fWinLineNr=0;
var fWinUser={};
var docTds = document.getElementsByTagName("td");
function fWinStream(){
for(i=fWinLineNr;i<docTds.length;i++){
a=lineData(docTds)
if(!!a && a[0]==2 && !!(docTds.innerHTML.match(/ fl.stert<.span>:/i))){
/(\w+) fl.stert<.span>/i.exec(docTds.innerHTML);
nick = RegExp.$1;
//alert(nick+" an dich");
if(!!fWinUser[nick]){
fWinUser[nick].messages[fWinUser[nick].messages.length] = docTds.innerHTML.replace(/ flüstert/, "");
fWinUser[nick].lineNr.push(i);
if(!!fWinUser[nick]["fWin"] && !fWinUser[nick]["fWin"].closed && !!fWinUser[nick]["fWin"].name){
var newTbl=fWinUser[nick]["fWin"].document.createElement("table");
var newTbody=fWinUser[nick]["fWin"].document.createElement("tbody");
var newTr=fWinUser[nick]["fWin"].document.createElement("tr");
var newTd=fWinUser[nick]["fWin"].document.createElement("td");
newTd.setAttribute("id", "td"+i);
newTr.appendChild(newTd);
newTbody.appendChild(newTr);
newTbl.appendChild(newTbody);
fWinUser[nick].fWin.document.getElementById("fluesterStream").appendChild(newTbl);
fWinUser[nick].fWin.document.getElementById("td"+i).innerHTML=fWinUser[nick].messages[fWinUser[nick].messages.length-1];
if(!fWinUser[nick].showInStream){
docTds.parentNode.parentNode.parentNode.style.display="none";
}
}
}
}
else if(!!(docTds.innerHTML.match(/Du fl.sterst an /i))){
/Du fl.sterst an (\w+)<.span>/i.exec(docTds.innerHTML);
nick = RegExp.$1;
//alert("du an "+nick);
if(!!fWinUser[nick]){
fWinUser[nick].messages[fWinUser[nick].messages.length]=docTds.innerHTML.replace("Du flüsterst an "+nick, myNick);
fWinUser[nick].lineNr.push(i);
if(!!fWinUser[nick]["fWin"] && !fWinUser[nick]["fWin"].closed && !!fWinUser[nick]["fWin"].name){
var newTbl=fWinUser[nick]["fWin"].document.createElement("table");
var newTbody=fWinUser[nick]["fWin"].document.createElement("tbody");
var newTr=fWinUser[nick]["fWin"].document.createElement("tr");
var newTd=fWinUser[nick]["fWin"].document.createElement("td");
newTd.setAttribute("id", "td"+i);
newTr.appendChild(newTd);
newTbody.appendChild(newTr);
newTbl.appendChild(newTbody);
fWinUser[nick].fWin.document.getElementById("fluesterStream").appendChild(newTbl);
fWinUser[nick].fWin.document.getElementById("td"+i).innerHTML=fWinUser[nick].messages[fWinUser[nick].messages.length-1];
if(!fWinUser[nick].showInStream){
docTds.parentNode.parentNode.parentNode.style.display="none";
}
}
}
}
}
fWinLineNr=i;
}
window.setInterval("fWinStream()", 500);
function fWinShowHide(show, nick){
fWinUser[nick].showInStream = show;
for(i=0; i<fWinUser[nick].lineNr.length; i++){
docTds[fWinUser[nick].lineNr].parentNode.parentNode.parentNode.style.display=show?(document.all?"block":"table-cell"):"none";
}
}
function starteFWin(nick){
if(!fWinUser[nick]){
fWinUser[nick]={"messages":[], "fWin":{}, "lineNr":[], "showInStream":false};
var a;
for(i=0;i<docTds.length;i++){
a=lineData(docTds[i]);
if(!!a && a[0]==2 && a[2]==nick && docTds[i].innerHTML.match(/ fl.stert<.span>:/i)){
fWinUser[nick].messages.push(docTds[i].innerHTML.replace(/ fl.stert/, ""));
fWinUser[nick].lineNr.push(i);
}
else if( docTds[i].innerHTML.match("Du flüsterst an "+nick+"</")){
fWinUser[nick].messages.push(docTds[i].innerHTML.replace("Du flüsterst an "+nick, myNick));
fWinUser[nick].lineNr.push(i);
}
}
}
if(!!fWinUser[nick]["fWin"] && !fWinUser[nick]["fWin"].closed && !!fWinUser[nick]["fWin"].name){
fWinUser[nick]["fWin"].close();
}
fWinUser[nick]["fWin"] = window.open("about:blank", "fWin"+nick, "width=300,height=300,scrollbars=yes,resizable=yes");
fWinUser[nick]["fWin"].document.write("<html><head><title>Fl&uuml;sterfenster mit "+nick+"</title>"+
"<link rel='stylesheet' type='text/css' href='http://server"+chatData[0]+".webkicks.de/"+chatData[1]+"/style_stream.css'><script language='javascript'>window.setInterval('window.scrollBy(0,50)',100)</script></head><body><table style='width:100%;height:100%'><tbody>"+
"<tr style='height:100%'><td style='overflow:scroll; vertical-align:top;' id='fluesterStream'>"+
"<table><tbody><tr><td>"+fWinUser[nick].messages.join("</td></tr></tbody></table><table><tbody><tr><td>")+"</td></tr></tbody></table>"+
"</td></tr><tr><td>"+
"<form name='fForm' onsubmit='opener.sendeText(\"/f "+nick+" \"+this.fMessage.value); this.fMessage.value=\"\"; return false;'>"+
"im Stream anzeigen?<input type='checkbox' name='showHide' onclick='opener.fWinShowHide(this.checked, \""+nick+"\")'><br><input name='fMessage' class='input'><input type='submit' class='submit' value='senden'></form></td></tr>"+
"</tbody></table></body></html>");
}


Chatbefehl (z.B. /fwin)
Script:Zeigen
<script language="javascript">if(parent.info){if(myNick==strip_tags('%me%')){starteFWin(strip_tags('%user%'))} document.getElementsByTagName("table")[document.getElementsByTagName("table").length-1].style.display = "none";}else{document.write(" öffnet ein Flüsterfenster.")}</script>

Wenn ihr stattdessen folgenden Chatbefehl anlegt wird beim jeweils anderen User (der quasi eingeladene) ein Link angezeigt. Wenn dieser darauf klickt öffnet sich auch bei ihm das Flüsterfenster:
Script:Zeigen
<script language="javascript">f=" öffnet ein Flüsterfenster";if(parent.info){t=document.getElementsByTagName("table");s=strip_tags;i=myNick;m=s('%me%');u=s('%user%');if(i==m)starteFWin(u);if(i==u)document.write(f+" <a href='javascript:starteFWin(\""+m+"\");'>auch starten</a>");else t[t.length-1].style.display="none"}else{document.write(f)}</script>

Leider funktionieren beide Befehle nicht mit Google Chrome.
Geht das noch zu ändern?
Zuletzt geändert von ZischDings am 03.03.2012, 21:49, insgesamt 1-mal geändert.
Grund: Codes "versteckt" ;-)
Deutsche Sprache ist Freeware, aber nicht OpenSource! Du darfst sie benutzen, aber nicht verändern.

Movert
Beiträge: 46
Registriert: 20.08.2011, 16:43

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von Movert » 24.09.2011, 13:42

Ich habe den js. DAtei in meinen Chat eingefügt. Nun möchte ich dass der Skript funktioniert. Ich muss also irgendwie den Befehl haben. welcher ist das? und gibt es die möglichkeit, das ganze so einzubauen, dass wenn ich in der Onlineliste auf einen Namen klicke, ein LInk erscheint, auf den ich klicken kann, und dan startet der Flüster Pop up automatisch? wenn ich dann wieder auf den nAmen der peron klicke verschwindet er wieder?

Mfg. Movert

Benutzeravatar
Mogli
Beiträge: 463
Registriert: 18.10.2010, 23:42
Wohnort: Bayern
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von Mogli » 24.09.2011, 14:24

hamigra hat geschrieben:Leider funktionieren beide Befehle nicht mit Google Chrome.
Geht das noch zu ändern?
Hallo Hamigra,

in meinem Chat funktionieren beide Befehle unter Iron und der ist ja mit Chrome identisch!


@Movert: Lies dir bitte die Anleitung und den kompletten Thread durch. Da steht alles bechrieben, wie du es haben möchtest!

Schöne Grüße
Mogli
Großschreibung, Punkt und Komma sind nicht schwer und erfreut den Leser sehr! :-)
--------------------------------------------------------------------------------------------------------------------------------------------------

Movert
Beiträge: 46
Registriert: 20.08.2011, 16:43

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von Movert » 24.09.2011, 14:29

Nein. was dort oben steht Hilft mir eben nicht.

Benutzeravatar
Mogli
Beiträge: 463
Registriert: 18.10.2010, 23:42
Wohnort: Bayern
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von Mogli » 24.09.2011, 14:43

Movert hat geschrieben:Nein. was dort oben steht Hilft mir eben nicht.
Nicht hier oben, sondern in diesem Thread !
Großschreibung, Punkt und Komma sind nicht schwer und erfreut den Leser sehr! :-)
--------------------------------------------------------------------------------------------------------------------------------------------------

Movert
Beiträge: 46
Registriert: 20.08.2011, 16:43

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von Movert » 24.09.2011, 14:49

achso, danke

ICh schaffe das immernoch nicht. so ein blöder Skript. wieso kann den nicht mal jemand für den WKTools Skriptmanager machen?

lieblich
Beiträge: 155
Registriert: 01.05.2010, 09:40
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von lieblich » 10.12.2011, 22:05

Hallo,

Das steht bei mir in der Ankündigung:

"+ ""+ "
"+ "
"+fWinUser[nick].messages.join("
")+"
"+ "
"+ "
"+ "im Stream anzeigen?
"); }

Dann wenn ich was eingebe und auf sende klicke kommt reconnect und wenn der andere nutzer auf Chat starten klickt kommt nichts.
Habe das hier eingefügt:
Script:Zeigen
var fWinLineNr=0;
var fWinUser={};
var docTds = document.getElementsByTagName("td");
function fWinStream(){
for(i=fWinLineNr;i<docTds.length;i++){
a=lineData(docTds)
if(!!a && a[0]==2 && !!(docTds.innerHTML.match(/ fl.stert<.span>:/i))){
/(\w+) fl.stert<.span>/i.exec(docTds.innerHTML);
nick = RegExp.$1;
//alert(nick+" an dich");
if(!!fWinUser[nick]){
fWinUser[nick].messages[fWinUser[nick].messages.length] = docTds.innerHTML.replace(/ flüstert/, "");
fWinUser[nick].lineNr.push(i);
if(!!fWinUser[nick]["fWin"] && !fWinUser[nick]["fWin"].closed && !!fWinUser[nick]["fWin"].name){
var newTbl=fWinUser[nick]["fWin"].document.createElement("table");
var newTbody=fWinUser[nick]["fWin"].document.createElement("tbody");
var newTr=fWinUser[nick]["fWin"].document.createElement("tr");
var newTd=fWinUser[nick]["fWin"].document.createElement("td");
newTd.setAttribute("id", "td"+i);
newTr.appendChild(newTd);
newTbody.appendChild(newTr);
newTbl.appendChild(newTbody);
fWinUser[nick].fWin.document.getElementById("fluesterStream").appendChild(newTbl);
fWinUser[nick].fWin.document.getElementById("td"+i).innerHTML=fWinUser[nick].messages[fWinUser[nick].messages.length-1];
if(!fWinUser[nick].showInStream){
docTds.parentNode.parentNode.parentNode.style.display="none";
}
}
}
}
else if(!!(docTds.innerHTML.match(/Du fl.sterst an /i))){
/Du fl.sterst an (\w+)<.span>/i.exec(docTds.innerHTML);
nick = RegExp.$1;
//alert("du an "+nick);
if(!!fWinUser[nick]){
fWinUser[nick].messages[fWinUser[nick].messages.length]=docTds.innerHTML.replace("Du flüsterst an "+nick, myNick);
fWinUser[nick].lineNr.push(i);
if(!!fWinUser[nick]["fWin"] && !fWinUser[nick]["fWin"].closed && !!fWinUser[nick]["fWin"].name){
var newTbl=fWinUser[nick]["fWin"].document.createElement("table");
var newTbody=fWinUser[nick]["fWin"].document.createElement("tbody");
var newTr=fWinUser[nick]["fWin"].document.createElement("tr");
var newTd=fWinUser[nick]["fWin"].document.createElement("td");
newTd.setAttribute("id", "td"+i);
newTr.appendChild(newTd);
newTbody.appendChild(newTr);
newTbl.appendChild(newTbody);
fWinUser[nick].fWin.document.getElementById("fluesterStream").appendChild(newTbl);
fWinUser[nick].fWin.document.getElementById("td"+i).innerHTML=fWinUser[nick].messages[fWinUser[nick].messages.length-1];
if(!fWinUser[nick].showInStream){
docTds.parentNode.parentNode.parentNode.style.display="none";
}
}
}
}
}
fWinLineNr=i;
}
window.setInterval("fWinStream()", 500);
function fWinShowHide(show, nick){
fWinUser[nick].showInStream = show;
for(i=0; i<fWinUser[nick].lineNr.length; i++){
docTds[fWinUser[nick].lineNr].parentNode.parentNode.parentNode.style.display=show?(document.all?"block":"table-cell"):"none";
}
}
function starteFWin(nick){
if(!fWinUser[nick]){
fWinUser[nick]={"messages":[], "fWin":{}, "lineNr":[], "showInStream":false};
var a;
for(i=0;i<docTds.length;i++){
a=lineData(docTds[i]);
if(!!a && a[0]==2 && a[2]==nick && docTds[i].innerHTML.match(/ fl.stert<.span>:/i)){
fWinUser[nick].messages.push(docTds[i].innerHTML.replace(/ fl.stert/, ""));
fWinUser[nick].lineNr.push(i);
}
else if( docTds[i].innerHTML.match("Du flüsterst an "+nick+"</")){
fWinUser[nick].messages.push(docTds[i].innerHTML.replace("Du flüsterst an "+nick, myNick));
fWinUser[nick].lineNr.push(i);
}
}
}
if(!!fWinUser[nick]["fWin"] && !fWinUser[nick]["fWin"].closed && !!fWinUser[nick]["fWin"].name){
fWinUser[nick]["fWin"].close();
}
fWinUser[nick]["fWin"] = window.open("about:blank", "fWin"+nick, "width=300,height=300,scrollbars=yes,resizable=yes");
fWinUser[nick]["fWin"].document.write("<html><head><title>Fl&uuml;sterfenster mit "+nick+"</title>"+
"<link rel='stylesheet' type='text/css' href='http://server"+chatData[0]+".webkicks.de/"+chatData[1]+"/style_stream.css'><script language='javascript'>window.setInterval('window.scrollBy(0,50)',100)</script></head><body><table style='width:100%;height:100%'><tbody>"+
"<tr style='height:100%'><td style='overflow:scroll; vertical-align:top;' id='fluesterStream'>"+
"<table><tbody><tr><td>"+fWinUser[nick].messages.join("</td></tr></tbody></table><table><tbody><tr><td>")+"</td></tr></tbody></table>"+
"</td></tr><tr><td>"+
"<form name='fForm' onsubmit='opener.sendeText(\"/f "+nick+" \"+this.fMessage.value); this.fMessage.value=\"\"; return false;'>"+
"im Stream anzeigen?<input type='checkbox' name='showHide' onclick='opener.fWinShowHide(this.checked, \""+nick+"\")'><br><input name='fMessage' class='input'><input type='submit' class='submit' value='senden'></form></td></tr>"+
"</tbody></table></body></html>");
}
Zuletzt geändert von ZischDings am 03.03.2012, 21:46, insgesamt 1-mal geändert.
Grund: Ellenlangen Code zugunsten der Übersichtlichkeit "versteckt".
Lebe dein Leben und denke nicht an morgen!

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

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von hamigra » 11.12.2011, 08:41

Wo steht denn etwas davon, daß du das Script in die Ankündigung einfügen sollst?
hamigra hat geschrieben:... Die js-Datei: ...
Deutsche Sprache ist Freeware, aber nicht OpenSource! Du darfst sie benutzen, aber nicht verändern.

lieblich
Beiträge: 155
Registriert: 01.05.2010, 09:40
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von lieblich » 22.02.2012, 18:11

Hallo,

habe es ja bei wktools.net eingefügt, trotzdem kommt dies...
Kann mir jemand helfen?

Edit: klappt zwar, aber der Nick im Chat-fenster ist gelb und die Nachricht "im Stream anzeigen?" ist auch gelb. Der Hintergrund ist nicht wie im chat, sondern nur weiß.. Im Chat ist er blau. Lässt sich das ändern?
Lebe dein Leben und denke nicht an morgen!

Benutzeravatar
FlorensiaFans
Beiträge: 59
Registriert: 10.03.2011, 11:14
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von FlorensiaFans » 03.03.2012, 20:22

gibt es schon eine Lösung für Chrome?
Wenn ein Leichenwagenfahrer eine Leiche transportiert braucht er dann einen Personenbeförderungsschein?

Lkwmonster
Beiträge: 85
Registriert: 15.01.2012, 10:29
Wohnort: In einem kleinen Bergbaudorf in China wo Kinder schon mit 5 Jahren in einem Bergbau arbeiten müssen.
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von Lkwmonster » 04.03.2012, 09:26

Hallo,
bei mir ebenso wie bei Lieblich, das Script hab ich auf wktools hochgeladen.
MfG Lkwmonster
MfG
Lkwmonster

lieblich
Beiträge: 155
Registriert: 01.05.2010, 09:40
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von lieblich » 04.03.2012, 09:30

1. FC Keller hat geschrieben:Im Script kommt ein </script> vor... das verursacht dieses Problem.
Ersetze es durch </scr"+"ipt>
Das müsste dein Problem lösen ;)
Lebe dein Leben und denke nicht an morgen!

Lkwmonster
Beiträge: 85
Registriert: 15.01.2012, 10:29
Wohnort: In einem kleinen Bergbaudorf in China wo Kinder schon mit 5 Jahren in einem Bergbau arbeiten müssen.
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von Lkwmonster » 04.03.2012, 09:47

habs jetzt geändert, funktioniert aber immer noch nicht, weiter am Ende hab ich das </script> ind </scr"+"ipt>
MfG
Lkwmonster

lieblich
Beiträge: 155
Registriert: 01.05.2010, 09:40
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von lieblich » 04.03.2012, 09:50

Was ist denn genau dein Problem? Was ist im Chat-Stream zu sehen?
Lebe dein Leben und denke nicht an morgen!

Lkwmonster
Beiträge: 85
Registriert: 15.01.2012, 10:29
Wohnort: In einem kleinen Bergbaudorf in China wo Kinder schon mit 5 Jahren in einem Bergbau arbeiten müssen.
Kontaktdaten:

Re: Flüstern mit Popup-Fenster

Ungelesener Beitrag von Lkwmonster » 04.03.2012, 09:52

"+ ""+ "
"+ "
"+fWinUser[nick].messages.join("
")+"
"+ "
"+ "
"+ "im Stream anzeigen?


"); }

nach im Stream anzeigen? ist noch ein kästchen zum auswählen, und darumter ist ein kasten zum reinschreiben und ein senden button, aber wenn man auf senden klickt dann reconnectet man
MfG
Lkwmonster

Antworten

Wer ist online?

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