Seite 1 von 1
Hilfe beim Flüsterfenster
Verfasst: 29.10.2010, 14:44
von Manueltiger
Hallo ihr lieben, hab alles durchsucht aber nichts gefunden. Und zwar bräuchte ich mal eine Ausführliche Anleitung, wie ich im chat ein Popup als anflüstern hin bekomme. Hab da zwar was gefunden, wo gesagt wird, dass ich ein js script erstellen muss, und dass dann auf meinen server packen soll, aber wenn ich dann das script versuche unter ankündigen ein zu bauen, passiert gar nichts...wäre schön, wwenn mir jemand sagen könnte, wie das jetzt genau geht und auf was ich achten muss:(
Re: Hilffeeeee, Neuling braucht eure Hilfe
Verfasst: 01.11.2010, 09:28
von hundestaffel
Die Scripte sind eigentlich alle sehr toll beschrieben. Ich kann leider nicht mehr sagen als genau an die Anleitung halten.
Eventuell kannst du deinen Script mal hier posten das man eventuell da einen Fehler herauslesen kann.
Re: Hilffeeeee, Neuling braucht eure Hilfe
Verfasst: 01.11.2010, 10:02
von Linus
Bitte benutze künftig aussagekräftige Titel für deine Themen und halte dich andenLeitfaden zum richtigen Posten, dafür gibts ihn schließlich

Re: Hilfe beim Flüsterfenster
Verfasst: 26.11.2010, 03:23
von Mogli
Ich mache für mein Anliegen jetzt keinen extra Thread auf.
Besteht die Möglichkeit in dem Flüsterfenster die Nicks in unterschiedlicher Farbe darzustellen?
Bsp: Nick A = Blau und Nick B = rot
Schöne Grüße
Mogli
Re: Hilfe beim Flüsterfenster
Verfasst: 26.11.2010, 10:29
von 1. FC Keller
Dafür ist dieser Teil im Code zuständig:
Code: Alles auswählen
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);
}
Du musst ihn hierdurch ersetzen
Code: Alles auswählen
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/, "").replace(nick, "<font color='#0000ff'>"+nick+"</font>"));
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, "<font color='#ff0000'>"+myNick+"</font>"));
fWinUser[nick].lineNr.push(i);
}
Dann wird der eigene Nick immer rot (#ff0000) und der andere blau (#0000ff) dargestellt. Die Farbcodes können natürlich geändert werden.
ich kam noch nicht zum testen. Hoffe es klappt so.
Re: Hilfe beim Flüsterfenster
Verfasst: 26.11.2010, 20:50
von Mogli
Code: Alles auswählen
var fWinLineNr=0;
var fWinUser={};
var docTds = document.getElementsByTagName("td");
function fWinStream(){
for(i=fWinLineNr;i<docTds.length;i++){
a=lineData(docTds[i])
if(!!a && a[0]==2 && !!(docTds[i].innerHTML.match(/ fl.stert<.span>:/i))){
/(\w+) fl.stert<.span>/i.exec(docTds[i].innerHTML);
nick = RegExp.$1;
//alert(nick+" an dich");
if(!!fWinUser[nick]){
fWinUser[nick].messages[fWinUser[nick].messages.length] = docTds[i].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[i].parentNode.parentNode.parentNode.style.display="none";
}
}
}
}
else if(!!(docTds[i].innerHTML.match(/Du fl.sterst an /i))){
/Du fl.sterst an (\w+)<.span>/i.exec(docTds[i].innerHTML);
nick = RegExp.$1;
//alert("du an "+nick);
if(!!fWinUser[nick]){
fWinUser[nick].messages[fWinUser[nick].messages.length]=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){
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[i].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[i]].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/, "").replace(nick, "<font color='#0000ff'>"+nick+"</font>"));
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, "<font color='#ff0000'>"+myNick+"</font>"));
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ü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' style='width:400px'><input type='submit' class='submit' value='senden'></form></td></tr>"+
"</tbody></table></body></html>");
}
Bei mir funktionerts leider nicht. Was hab ich falsch gemacht?