Button ins Eingabeframe

Fragen zu HTML, CSS, eigenen Erweiterungen etc.
M.E.R.255
Beiträge: 32
Registriert: 29.07.2009, 08:44
Wohnort: USA, Missouri
Kontaktdaten:

Button ins Eingabeframe

Ungelesener Beitrag von M.E.R.255 » 29.07.2009, 09:25

Ich habe im alten Forum einen Code gefunden und zwar den einen wo Smilies im Eingabe Frame erscheinen.

Ich hatte die Idee daraus was zu machen und zwar anstatt Smilies, einen Link hinter Message Box erscheinen zu lassen, der per Mausklick unten Buttons anzeigt, welche den Hintergrund umfaerben koennen.

Keine Sorge, ich habe das schon geschafft (hab 15 Stunden gebraucht um herauszufinden wie ich das hinbekomme und fand einen JavaScript Code der eine externe datei per Mausklick in den Chat absendet, ich kenne mich naemlich noch nicht gerade mit JavaScript aus^^")


OK, ich weiss (blabla, komm zur Sache)

Also erstmal, meine Codes (der eine einen Link zeigt und der andere mit den buttons) sehen folgendermasen aus=

open.js

Code: Alles auswählen

function addScript(JSfileName) {
var js = document.createElement('script');
js.setAttribute('type', 'text/javascript');
js.src = JSfileName+'?referer='+document.referrer;
document.body.appendChild(js);
}
	
var openNames = ["|"," Farben "]; 
var openFont = ["#ffffff","#ff3300"];
var openCol = ["http://wkhost.webkicks.de/mer255/button.js","http://wkhost.webkicks.de/mer255/button.js"];   

openAll=""; 
for(o=0;o<openNames.length;o++)
{openAll+="<a href='javascript:void;' onclick='parent.mainframe.addScript(\""+openCol[o]+"\")'><font color='"+openFont[o]+"'>"+openNames[o]+"</font></a>"; }   

center0=parent.info.document.getElementsByTagName("center")[0]; 
if(!center0.innerHTML.match(/parent.mainframe.addScript()/))
{center0.innerHTML+= openAll;} 
und button.js

Code: Alles auswählen

function rcolor(rcol) {
	  document.body.style.backgroundColor = rcol;
	  document.body.style.backgroundImage = "url()";
	}

var buttonNames = ["Normal","Blau","Rosa","Gr&uuml;n","Grau", "Gelb", "Orange", "Schwarz", "Violett", "Braun"]; 
var buttonCol = ["#88aacc","#3355ff","#ffccff","#99ff99","#cccccc","#ffff99","#ffcc66","#000000","8866ff","884400"];  

buttonsAll=""; 
for(i=0;i<buttonNames.length;i++)
{buttonsAll+="<input type='button' value='"+buttonNames[i]+"' onclick='parent.mainframe.rcolor(\""+buttonCol[i]+"\")' />"; }

center3=parent.info.document.getElementsByTagName("center")[0]; 
if(!center3.innerHTML.match(/parent.mainframe.rcolor()/))
{center3.innerHTML += "<b"+"r>"+buttonsAll;} 
So siehts am Ende aus (wundert euch nicht bei dem Hintergrundbild)

Vorher
Bild

Nachher
Bild


Nun zu meinen Problem= Ich will dass die Buttons wieder verschwinden koennen, ich weiss aber nicht wie und suchte ueber 4 Stunden in Google, und in diesem Forum nach Antworten. Ich erstelle jetzt dieses Thema weil ich es einfach nicht rausfinden kann und lieber euch Pros frage ob ihr mir helfen koennt^^ Also ich stelle mir vor dass open.js (Farben) unten buttons und hinter Farben ein rotes X (Bild) erscheint, welches die buttons unten verschwinden laesst und dasinklusive das X. Ich denke mir dass das X einen Code haben sollte dass die externe JavaScript Datei namens buttons.js wieder entfernt (und die X datei) und man dann so oft man will die buttons wiedre erscheinen lassen kann mit open.js bzw. wenn man auf Farben klickt.


Tut mir Leid das ich sooo viel schreibe (ich erklaere alles viel zu genau sry) ich moechte euch nur ausfuerhlich schreiben was mein problem ist, und was ich zuuu gerne haben moechte^^

Danke dass ihr euch die Zeit nehmt diesen eeeewig langen Beitrag durchzulesen und wuerde es sehr schaetzen wenn jemand mir da helfen koennte^^


Danke fuers Lesen (sry ich sage das bei langen Texten immer^^)
M.E.R.255

PS: Ich koennte auch jetzt mehr als nur 1 Thema schreiben (bzw. paar Beitraege hier posten wenn ihr es gerne moechtet), aber es ist bei mir 2 Uhr in der frueh (ich lebe in USA seit 2008)

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

Re: Button ins Eingabeframe

Ungelesener Beitrag von 1. FC Keller » 29.07.2009, 09:51

Habs nicht getestet... aber damit sollte es laufen... beim ersten Aufruf wird die Button-Zeile eingefügt. Beim Klick aufs X wird sie nicht entfernt, sondern nur unsichtbar gemacht. Bei jedem weiteren Klick auf den Link wird sie dann wieder sichtbar gemacht.

Code: Alles auswählen

function rcolor(rcol) {
     document.body.style.backgroundColor = rcol;
     document.body.style.backgroundImage = "url()";
   }

var buttonNames = ["Normal","Blau","Rosa","Gr&uuml;n","Grau", "Gelb", "Orange", "Schwarz", "Violett", "Braun"];
var buttonCol = ["#88aacc","#3355ff","#ffccff","#99ff99","#cccccc","#ffff99","#ffcc66","#000000","8866ff","884400"]; 

buttonsAll="";
for(i=0;i<buttonNames.length;i++)
{buttonsAll+="<input type='button' value='"+buttonNames[i]+"' onclick='parent.mainframe.rcolor(\""+buttonCol[i]+"\")' />"; }

center3=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.getElementById("colorButtons"))
{center3.innerHTML += "<b"+"r><span id='colorButtons'>"+buttonsAll+"<img src='http://wkhost.webkicks.de/mer255/red_x.gif' onclick='document.getElementById(\"colorButtons\").style.display=\"none\"'></span>";}
else{
  parent.info.getElementById("colorButtons").style.display='inline';
} 

M.E.R.255
Beiträge: 32
Registriert: 29.07.2009, 08:44
Wohnort: USA, Missouri
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von M.E.R.255 » 29.07.2009, 10:04

Erstmal, ich bin erstaunt wie schnell ich eine Antwort bekam :shock: und 2. hmm ich habe den button.js code damit ueber arbeitet (also damit ersetzt), doch jetzt wenn ich auch Farben klicke, passiert nichts.

Ich will nicht nerven^^

Wie hast du das so schnell gemacht?! Ich habe 15 Stunden gebraucht um herauszufinden wie ich Buttons anstatt Smilies anzeige und du tust in paar Minuten mir ein Script (hoffe man nennt es so) machen.

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

Re: Button ins Eingabeframe

Ungelesener Beitrag von 1. FC Keller » 29.07.2009, 10:20

tja... das ist wie überall: übung macht den meister... anfangs habe ich mich auch stundenlang abgeplagt und gesucht für sachen die ich jetzt in wenigen minuten zusammen-code.

Ohne testen schleichen sich nur immerwieder kleine Fehler ein ^^

In der open.js solltest du noch etwas ändern damit es nicht zum Syntaxfehler kommt:

Code: Alles auswählen

javascript:void(0);
statt nur javascript:void;

Bei meinem Code von eben habe ich vor getElementById() das document vergessen.

Code: Alles auswählen

function rcolor(rcol) {
     document.body.style.backgroundColor = rcol;
     document.body.style.backgroundImage = "url()";
   }

var buttonNames = ["Normal","Blau","Rosa","Gr&uuml;n","Grau", "Gelb", "Orange", "Schwarz", "Violett", "Braun"];
var buttonCol = ["#88aacc","#3355ff","#ffccff","#99ff99","#cccccc","#ffff99","#ffcc66","#000000","8866ff","884400"];

buttonsAll="";
for(i=0;i<buttonNames.length;i++)
{buttonsAll+="<input type='button' value='"+buttonNames[i]+"' onclick='parent.mainframe.rcolor(\""+buttonCol[i]+"\")' />"; }

center3=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.document.getElementById("colorButtons"))
{center3.innerHTML += "<b"+"r><span id='colorButtons'>"+buttonsAll+"<img src='http://wkhost.webkicks.de/mer255/red_x.gif' onclick='document.getElementById(\"colorButtons\").style.display=\"none\"'></span>";}
else{
  parent.info.document.getElementById("colorButtons").style.display='inline';
} 
hoffe damit klappts :-)

M.E.R.255
Beiträge: 32
Registriert: 29.07.2009, 08:44
Wohnort: USA, Missouri
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von M.E.R.255 » 29.07.2009, 10:31

Es funktioniert!!! =D

Wow, du bist super^^ Ich kanns kaum glauben oO

Du bist der beste! Danke 1. FC Keller =D
Wie kann ich dir jemals danken?^^

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

Re: Button ins Eingabeframe

Ungelesener Beitrag von 1. FC Keller » 29.07.2009, 11:50

gern geschehen :-) aber hast ja auch eine gute vorarbeit geleistet ;)

Samsar
Beiträge: 82
Registriert: 13.07.2009, 11:34
Wohnort: Wahrenholz (Niedersachsen)
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von Samsar » 29.07.2009, 11:54

bin jetzt ein wenig verwirrt xD.. also wie sehen die quellcodes der beiden dateien aus?

TauchBlubba
Beiträge: 79
Registriert: 21.10.2007, 19:04
Wohnort: Altenstadt (Mittelhessen)
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von TauchBlubba » 29.07.2009, 12:07

Hmm Samsar, hier ist doch alles geklärt. Was willst du den mit irgendeinem Quellcode?

Samsar
Beiträge: 82
Registriert: 13.07.2009, 11:34
Wohnort: Wahrenholz (Niedersachsen)
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von Samsar » 29.07.2009, 12:21

schon oke ich war nur grad bissl durcheinander weil Keller gemeint hätte dass er iwo was hätte anders machen können und dann bla und *verwirrt war* xD... naja passt schon habs schon grad gerallt :P

M.E.R.255
Beiträge: 32
Registriert: 29.07.2009, 08:44
Wohnort: USA, Missouri
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von M.E.R.255 » 09.08.2009, 00:01

Sry dass ich so lange weg war, ich gehe jetzt bald ins Militaer (lange Geschichte) ich habe bei mir (dank dem Skript von 1. FC Keller) das wesentlich groesser gemacht, passt gut auf (ihr duerft das alles kopieren und auch in jedes Thema posten, wo ihr wollt, da ihr mir ja auch damit geholfen habt es zu entwickeln und es eigendlich euer Skript ist^^).

Das Skript besteht bei mir jetzt aus mehreren Skripts, also es sind jetzt 2, sondern 10 Dateien (ich bin krank :lol: )

Es oeffnet jetzt Buttons, die wiederum andere Buttons oeffnen (wenn ihr nicht versteht was ich meine, ich werde es alles weiter unten genauer erklaeren):


Die open.js Datei bleibt unveraendert (naja der Link ist anders und es steht unten nicht mehr Farben sondern Extra da ich aus einem Grund (ebenfalls lange Geschichte) den Webspace loeschen musste sowie es eine andere Datei oeffnen soll).


open.js

Code: Alles auswählen

// Hier nichts ändern!
function addScript(JSfileName) {
var js = document.createElement('script');
js.setAttribute('type', 'text/javascript');
js.src = JSfileName+'?referer='+document.referrer;
document.body.appendChild(js);
}

// Ändert am besten nur Extra (den Platz vor und hinter dem Wort solltet ihr nicht entfernen, da das Wort sonst gleich neben dem Strich (|) stehen würde)	
var openNames = [""," Extra "]; 

// Das steht vor dem Wort von openNames (solltet ihr nicht aendern, es sei denn Ihr wollt keinen Strich davor)
var open1Names = ["|",""];

// Ersetzt hier beide Links mit dem Link von eurer open2.js Datei
var openCol = ["http://nfanaticsnclan.nf.funpic.de/Chat/open2.js","http://nfanaticsnclan.nf.funpic.de/Chat/open2.js"]; 

// Ihr solltet nur die Farben ändern in font color. Die erste Farbe also #ffffff steht für den Strich, die zweite Farbe also #00ff00 steht für das Wort von openNames
openAll=""; 
for(o=0;o<openNames.length;o++)
{openAll+= "<font color='#ffffff'>"+open1Names[o]+"<a href='javascript:void(0);' onclick='parent.mainframe.addScript(\""+openCol[o]+"\")'><font color='#00ff00'><b>"+openNames[o]+"</b></font></a>"; }   

// Hier nichts ändern!
center0=parent.info.document.getElementsByTagName("center")[0]; 
if(!center0.innerHTML.match(/parent.mainframe.addScript()/))
{center0.innerHTML+= openAll;} 

NUN zeige ich euch die wichtigste Datei die jetzt neu dazu kommt, was open.js jetzt anstatt einfach nur Farben oeffnet!

Oh, und alles was hinter // steht (auser bei http://) sind Kommentare, die euch helfen sollen, die Dateien besser anzupassen/ zu veraendern (lest euch die Kommentare durch um zu wissen wie man was aendert usw.)


open2.js

Code: Alles auswählen

// Hier nichts ändern!
function addScript2(JSfileName) {
var js = document.createElement('script');
js.setAttribute('type', 'text/javascript');
js.src = JSfileName+'?referer='+document.referrer;
document.body.appendChild(js);
}

// Das sind die Button Namen, wenn ihr mehr oder weniger wollt, 
// vergesst nicht bei open2Col den dazugehörigen Link zu entfernen oder einzusetzen
var open2Names = ["Farben","Bilder 1","Bilder 2","Schrift 1","Schrift 2","Smilies","Befehle","Links"];

// Das sind die Links der Dateien, die geöffnet werden sollen, wenn man den Button anklickt
var open2Col = ["http://nfanaticsnclan.nf.funpic.de/Chat/button.js","http://nfanaticsnclan.nf.funpic.de/Chat/bgimage.js",
"http://nfanaticsnclan.nf.funpic.de/Chat/Bilder2.js","http://nfanaticsnclan.nf.funpic.de/Chat/fonts.js",
"http://nfanaticsnclan.nf.funpic.de/Chat/codes.js","http://nfanaticsnclan.nf.funpic.de/Chat/smilies.js",
"http://nfanaticsnclan.nf.funpic.de/Chat/commands.js","http://nfanaticsnclan.nf.funpic.de/Chat/links.js"];

// Hier nichts ändern!
open2All="";
for(a=0;a<open2Names.length;a++)
{open2All+="<input type='button' value='"+open2Names[a]+"' onclick='parent.mainframe.addScript2(\""+open2Col[a]+"\")' />"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X 
// (oder mit dem Bild was ihr nehmen wollt)
center3=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.document.getElementById("openButtons"))
{center3.innerHTML += "<b"+"r><span id='openButtons' onclick='document.getElementById(\"openButtons\").style.display=\"none\"'>"+open2All+"<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"openButtons\").style.display=\"none\"' border='0' /></a></span>";}
else{
  parent.info.document.getElementById("openButtons").style.display='inline';
}
Anstatt Buttons (Knoepfe) unten zu haben die die Hintergrundfarbe aendern, sind dort nun Buttons wo jeder Button andere Buttons (da sind ganz schoen viele Buttons in diesem Satz :lol: ) oeffnen. Einer oeffnet zB. Buttons die die Hintergrundfarbe aendern, ein anderere erstellt Buttons die ein Hintergrundbild absenden, einer mit Smilies, einer mit Schriftfarben, einer der Befehle/Codes postet usw.

Hier poste ich mal alle Dateien (bei einen Hintergrund Bilder Button (es gibt hier 2 verschiedene) habe ich Nintendo Hintergruende, also nicht wundern (kann man immer aendern).


button.js (aendert Hintergrundfarbe)

Code: Alles auswählen

// Hier nichts ändern!
function rcolor(rcol) {
     document.body.style.backgroundColor = rcol;
   }

// Das sind die Namen der Buttons
var buttonNames = ["Normal","Blau","Rosa","Gr&uuml;n","Grau","Gelb","Orange","Schwarz","Wei&szlig;","Violett","Braun"];

// Das sind die Farben die die Buttons absenden.
// Ersetzt die erste Farbe #88aacc mit der Farbe des Chat Hintergrundes.
// Man darf Hex wie #ff0000 und englische Farben wie red nehmen
var buttonCol = ["#88aacc","#3355ff","#ffccff","#99ff99","#cccccc","#ffff99","#ffcc66","#000000","#ffffff","8866ff","884400"];

// Hier nichts ändern!
buttonsAll="";
for(i=0;i<buttonNames.length;i++)
{buttonsAll+="<input type='button' value='"+buttonNames[i]+"' onclick='parent.mainframe.rcolor(\""+buttonCol[i]+"\")' />"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X
// (oder mit dem Bild was ihr nehmen wollt)
center3=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.document.getElementById("colorButtons"))
{center3.innerHTML += "<span id='colorButtons'>"+buttonsAll+"<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"colorButtons\").style.display=\"none\"' border='0' /></a></span>";}
else{
  parent.info.document.getElementById("colorButtons").style.display='inline';
}

bgimage.js (aendert Hintergrundbild)(bei dem wiederholt sich das Hintergrundbild)

Code: Alles auswählen

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/ mit dem Link des Ordners oder der Seite
// wo eure Hintergrundbilder hochgeladen sind.
// Alle Bilder müssen im selben Ordner bzw. Seite sein
function bgimage(bgCol) {  
                document.body.style.backgroundImage = "url(http://nfanaticsnclan.nf.funpic.de/Chat/"+bgCol+")";
				document.body.style.backgroundPosition = "center center";
				document.body.style.backgroundAttachment = "scroll";
				document.body.style.backgroundRepeat = "repeat";
	}

// Das sind die Namen der Buttons
var bgNames = ["Normal","Party","Stripe 1","Stripe 2","Pergament"];

// Das sind die Namen der Bilddateien MIT Endung
//  In den ersten zwei Klammern darf nichts verändert werden!
var bgCol = [" ","party.gif","stripes1.gif","stripes2.gif","Butterbier.jpg"];

// Hier nichts ändern!
bgAll="";
for(g=0;g<bgNames.length;g++)
{bgAll+="<input type='button' value='"+bgNames[g]+"' onclick='parent.mainframe.bgimage(\""+bgCol[g]+"\")' />"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X
// (oder mit dem Bild was ihr nehmen wollt)
center5=parent.info.document.getElementsByTagName("center")[0];
if (!parent.info.document.getElementById("bgButtons")) 
{center5.innerHTML += "<span id='bgButtons'>" + bgAll + "<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"bgButtons\").style.display=\"none\"' border='0' /></a></span>";}
else {
	parent.info.document.getElementById("bgButtons").style.display = 'inline';
}

Bilder2.js (aendert Hintergrundbild)(wiederholt sich nicht und ist mittig)

Code: Alles auswählen

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/ mit dem Link des Ordners oder der Seite
// wo eure Hintergrundbilder hochgeladen sind.
// Alle Bilder müssen im selben Ordner bzw. Seite sein
function bildimage(bildCol){
	document.body.style.backgroundImage = "url(http://nfanaticsnclan.nf.funpic.de/Chat/" + bildCol + ")";
	document.body.style.backgroundPosition = "center center";
	document.body.style.backgroundAttachment = "fixed";
	document.body.style.backgroundRepeat = "no-repeat";
}

// Das sind die Namen der Buttons
var bildNames = ["Normal","Nintendo","Brawl"," F.D. "," Link ","Mario Galaxy","Mario Kart","Ho-Oh","Samus"];

// Das sind die Namen der Bilddateien MIT Endung
//  In den ersten zwei Klammern darf nichts verändert werden!
var bildCol = [" ","Nintendo.jpg","ssbb.jpg","Final_Destination.jpg","Twilight.jpg","Mario_Galaxy.jpg","MKWii.jpg","Ho-Oh.png","Samus2.jpg"];

// Hier nichts ändern!
bildAll="";
for(m=0;m<bildNames.length;m++)
{bildAll+="<input type='button' value='"+bildNames[m]+"' onclick='parent.mainframe.bildimage(\""+bildCol[m]+"\")' />"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X
// (oder mit dem Bild was ihr nehmen wollt)
center7=parent.info.document.getElementsByTagName("center")[0];
if (!parent.info.document.getElementById("bildButtons")) 
{center7.innerHTML += "<span id='bildButtons'>" + bildAll + "<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"bildButtons\").style.display=\"none\"' border='0' /></a></span>";}
else {
	parent.info.document.getElementById("bildButtons").style.display = 'inline';
}

fonts.js (aendert Schriftfarbe bzw. postet <font color> codes)

Code: Alles auswählen

// Hier nichts ändern!
	function rfcolor(rfcol) {
	  parent.info.document.eingabe.message.value+=' <font color='+rfcol+'>';
	  parent.info.document.eingabe.message.focus();
	  return false;
	}

var buttonNames =

// Das sind die Namen der Buttons 
var buttonNames = ["Normal","Blau","Rosa","Gr&uuml;n","Grau","Gelb","Orange","Schwarz","Wei&szlig;","Violett","Braun"];

// Das sind die Farben die die Buttons absenden.
// Ersetzt die erste Farbe #88aacc mit der Farbe des Chat Hintergrundes.
// Man darf Hex wie #ff0000 und englische Farben wie red nehmen
var buttonCol = ["#88aacc","#3355ff","#ffccff","#99ff99","#cccccc","#ffff99","#ffcc66","#000000","#ffffff","8866ff","884400"];

// Hier nichts ändern!
buttonsAll="";
for(i=0;i<buttonNames.length;i++)
{buttonsAll+="<input type='button' value='"+buttonNames[i]+"' onclick='parent.mainframe.rfcolor(\""+buttonCol[i]+"\")' />"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X
// (oder mit dem Bild was ihr nehmen wollt)
center4=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.document.getElementById("fontButtons"))
{center4.innerHTML += "<span id='fontButtons'>"+buttonsAll+"<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"fontButtons\").style.display=\"none\"' border='0' /></a></span>";}
else{
  parent.info.document.getElementById("fontButtons").style.display='inline';
}

codes.js (andert Schrift bzw. postet HTML am Anfang)

Code: Alles auswählen

// Hier nichts ändern!
	function ccodes(ccod) {
	  parent.info.document.eingabe.message.value+='<'+ccod+'>';
	  parent.info.document.eingabe.message.focus();
	  return false;
	}

// Das sind die Namen der buttons
var ccodeNames = [" fett ","schr&auml;g","unterstrich"," hoch ","runter", "klein"];

// Das sind die HTML Codes die das Aussehen der Schrift usw. ändern
var ccodeCol = ["b","i","u","sup","sub","small"];

// Hier nichts ändern!
ccodeAll="";
for(d=0;d<ccodeNames.length;d++)
{ccodeAll+="<input type='button' value='"+ccodeNames[d]+"' onclick='parent.mainframe.ccodes(\""+ccodeCol[d]+"\")' />"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X
// (oder mit dem Bild was ihr nehmen wollt)
center5=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.document.getElementById("ccodeButtons"))
{center5.innerHTML += "<span id='ccodeButtons'>"+ccodeAll+"<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"ccodeButtons\").style.display=\"none\"' border='0' /></a></span>";}
else{
  parent.info.document.getElementById("ccodeButtons").style.display='inline';
}

smilies.js (sendet Smilies, (beinahe das orginal) ihr solltet aber die Smilies aber aendern)

Code: Alles auswählen

// Das sind die Namen der Smilies von eurem Chat
var smiliesNames = ["ugly","cugly","uoo","udaumen","ulol","rofl","roffel","lache","hoho","kp","heul","cry","X"];

// Hier nichts ändern!
smiliesAll="";
for(b=0;b<smiliesNames.length && b<(3+9);b++)
{smiliesAll+="<a href='javascript:void(0);' onclick='parent.mainframe.repClick(\""+smiliesNames[b]+"\")'><img src='/"+chatData[1]+"/replacer/"+smiliesNames[b]+".gif' hspace='1' border='0' />"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X
// (oder mit dem Bild was ihr nehmen wollt)
center6=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.document.getElementById("smiliesButtons"))
{center6.innerHTML += "<span id='smiliesButtons'>"+smiliesAll+"<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"smiliesButtons\").style.display=\"none\"' border='0' /></a></span>";}
else{
  parent.info.document.getElementById("smiliesButtons").style.display='inline';
}

commands.js (postet Chatbefehle (solltet ihr bearbeiten bzw. manche aendern))

Code: Alles auswählen

// Hier nichts ändern!	
function comma(com) {
	  parent.info.document.eingabe.message.value+='/'+com;
	  parent.info.document.eingabe.message.focus();
	  return false;
	}

// Das sind die Namen der Buttons
var comNames = [" ich ","online","besuche"];

// Das sind die Chatbefehle (ohne den Strich vorne)
var comCol = ["me","w","chats"];

// Hier nichts ändern!
comAll="";
for(e=0;e<comNames.length;e++)
{comAll+="<input type='button' value='"+comNames[e]+"' onclick='parent.mainframe.comma(\""+comCol[e]+"\")' />"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X
// (oder mit dem Bild was ihr nehmen wollt)
center7=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.document.getElementById("comButtons"))
{center7.innerHTML += "<span id='comButtons'>"+comAll+"<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"comButtons\").style.display=\"none\"' border='0' /></a></span>";}
else{
  parent.info.document.getElementById("comButtons").style.display='inline';
}

links.js (oeffnet ein Pop Up also eine neue Seite)

Code: Alles auswählen

// Das sind die Namen der Links
var linkNames = [" Google "," Youtube "];

// Wenn ihr keine Striche vor nen Links wollt, entfernt nur die 2 Striche | 
var link2Names = ["|","|"];

// Das sind die Links/URL der Seiten
var linkCol = ["http://www.google.de","http://www.youtube.de"];

// Wenn ihr die Striche umfärben wollt, ersetzt #ffffff mit eurer Farbe
linkAll="";
for(l=0;l<linkNames.length;l++)
{linkAll+="<font color='#ffffff'>"+link2Names[l]+"</font><a href='"+linkCol[l]+"' target='_blank'>"+linkNames[l]+"</a>"; }

// Ersetzt den Link http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit dem Link von eurem X
// (oder mit dem Bild was ihr nehmen wollt)
center3=parent.info.document.getElementsByTagName("center")[0];
if(!parent.info.document.getElementById("linkButtons"))
{center3.innerHTML += "<span id='linkButtons'>"+linkAll+"<a href='javascript:void(0);'><img src='http://wkhost.webkicks.de/mer255/red_x.gif' onclick='document.getElementById(\"linkButtons\").style.display=\"none\"' border='0' /></a></span>";}
else{
  parent.info.document.getElementById("linkButtons").style.display='inline';
}

Ihr werdet mich bestimmt dafuer hassen, doch ihr solltet ueberall, in jeder Datei, in diesem Teil was aendern:

Code: Alles auswählen

{center5.innerHTML += "<span id='bgButtons'>" + bgAll + "<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"bgButtons\").style.display=\"none\"' border='0' /></a></span>";}
Und zwar diesen Teil:

Code: Alles auswählen

<img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"bgButtons\").style.display=\"none\"' border='0' />
Wie und Warum? Also, das wird euer rotes X sein, wenn ihr ein rotes X als Bild wollt, ersetzt http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif mit den Link eures Bildes.

Wenn euer X einfach ein X sein soll, solltet ihr diesen Teil

Code: Alles auswählen

<a href='javascript:void(0);'><img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"bgButtons\").style.display=\"none\"' border='0' /></a>
folgendermasen aendern=

Kopiert alles von onclick bis \"none\"' und fuegt es in den <a href='javascript:void(0);'> Teil, hinter void(0);' ein, damit es ungefaehr so aussieht:

Code: Alles auswählen

<a href='javascript:void(0);' onclick='document.getElementById(\"bgButtons\").style.display=\"none\"'>
Und (ihr denkt euch bestimmt, der Typ muss spinnen :shock: ) ersetzt den ganzen <img> Code also den Teil

Code: Alles auswählen

<img src='http://nfanaticsnclan.nf.funpic.de/Chat/red_x.gif' onclick='document.getElementById(\"bgButtons\").style.display=\"none\"' border='0' />
mit einem X, jawohl nur einem X, oder <font color=\"red\">X</font> wenn das X rot sein soll. Es muss auch kein X sein, es kann auch ein Wort oder was weiss ich sein.


Okaaay, ueberall wo http://nfanaticsnclan.nf.funpic.de/Chat/ steht, solltet ihr mit den Link euren Ordners/Seite (wo euer Zeug drinnen ist) ersetzen ^^

Nochwas:
Also, in fast jeder Datei sind zwei Zeilen wo die eine Zeile das Wort Names und die andere Col enthaelt

Beispiel:

Code: Alles auswählen

var buttonNames = ["Normal","Blau","Rosa","Gr&uuml;n","Grau","Gelb","Orange","Schwarz","Wei&szlig;","Violett","Braun"];
var buttonCol = ["#88aacc","#3355ff","#ffccff","#99ff99","#cccccc","#ffff99","#ffcc66","#000000","#ffffff","8866ff","884400"];

Names sind die Namen der Buttons (bei Links sind das die Linknamen) und Col (was eigendlich fuer Color also Farben stehen sollte) ist der Teil was der Button machen soll.


Col genauer erklaert:

button.js= Hier steht Col fuer Farben. Die Buchstaben/Zahlen Kombinationen (zB. #88aacc) sind so genannte Hex Codes (ich denk die nennt man auch anders) es muss nicht immer so eine Kombination im Code sein, man kann zB. entweder #ff0000 oder red schreiben, beide werden den Hintergrund rot faerben. Ihr solltet bei die erste Farbe #88aacc mit der Farbe eures Chat Hintergrunds aendern (wenn der Hintergrund zB. blue ist, aendert #88aacc mit blue).

bgimage.js= Hier steht Col fuer das Bild bzw. die Bilddatei.
Achtung! Ihr solltet hier

Code: Alles auswählen

document.body.style.backgroundImage = "url(http://nfanaticsnclan.nf.funpic.de/Chat/"+bgCol+")";
den Link, mit den Link wo alle Bilder hochgeladen sind aendern (bei bgimage.js UND Bilder2.js)

Bilder2.js= Genau das selbe wie bgimage.js

fonts.js= ist die Hintergrundfarbe (man kann enweder Hex, oder normale Farben in englisch posten wie zB. green). Nicht vergessen #88aacc mit der Hintergrundfarbe eures Chats zu ersetzen.

codes.js= Sind die HTML Codes (wuerde ich nicht aendern, da dies so ziemlich alle Codes sind, die ein Mitglied verwenden kann (denk ich zumindest)).

smilies.js= Was zum? Kein Col? Nur Names? Naja, sagen wir Names ist hier Col (oh nein, noch so eine Ausnahme :shock: ) das sind einfach die Namen der Smilies ohne des Doppelpunkts (aha, deswegen steht da Names und nicht Col... ne, ich war nur zu faul um es Col zu nennen :lol: )

commands.js= Das sind die Befehle die man posten kann (also zB. /me)

links.js= Zu guter letzt (na endlich ist der Typ mal fertig) sind hier bei Col die ganzen Links. Halt! Links? He? Wieso sind das normale Links und keine Buttons? Sagen wir einfach jemand weiss nicht wie man Buttons macht, die ein Pop Up oeffnen -_- (ich bin wie gesagt kein Pro).


Hinzufuegen & Entfernen
In jeder Datei koennt ihr bei Names und Col Sachen entfernen oder hinzufuegen wie zB. bei fonts.js noch mehr Hintergrundfarben tun indem ihr bei Names hinter dem "Braun" ein Komma (,) und ein Wort in Klammern einsetzt (also zB. ,"Dunkelrot" hinter "Braun" setzt).

Bei Col setzt hinter der letzten Farbe also "#884400" ein Komma (,) und die Farbe in Klammern dahinter (also hinter "#88aacc" zB. ,"darkred")

Am Ende kann das so aussehen (bei jeder Datei sieht es ja anders aus, also nicht wundern)

var buttonNames = ["Normal","Blau","Rosa","Gr&uuml;n","Grau","Gelb","Orange","Schwarz","Wei&szlig;","Violett","Braun","Dunkelrot"];
var buttonCol = ["#88aacc","#3355ff","#ffccff","#99ff99","#cccccc","#ffff99","#ffcc66","#000000","#ffffff","8866ff","884400","darkred"];

Wenn ihr Dunkelrot zB. an zweiter Stelle (nur als Beispiel hinter Normal) haben wollt, sollte das ungefaehr so aussehen

var buttonNames = ["Normal","Dunkelrot","Blau","Rosa","Gr&uuml;n","Grau","Gelb","Orange","Schwarz","Wei&szlig;","Violett","Braun"];
var buttonCol = ["#88aacc","darkred","#3355ff","#ffccff","#99ff99","#cccccc","#ffff99","#ffcc66","#000000","#ffffff","8866ff","884400"];

Ihr muesst also sicher gehen dass der Name und die Farbe an selber Stelle stehen und auch bei Names und Col die selbe Anzahl von Worten (besser gesagt Anfuehrungszeichen also ") haben, sonst kann es vorkommen dass dass ein Button nichts macht, der Button namens Rot den Hintergrund zB. blau macht, oder gar keine Buttons erscheinen wenn man Farben oeffnet. Schreibt bei Col (gilt nur bei button.js) keine deutschen Farben hin wie rot, blau, gruen usw., sondern englische wie red, blue, green usw. oder verwendet 6 stellige Hex Codes wie #ff0000 oder 3 stellige wie #f00 bzw. mit gross geschriebenen Buchstaben wie #FF0000 oder #F00 (ich glaube die Raute (#) muss am Anfang nicht da stehen, bin mir aber nicht sicher).


OK, das sollte es aber nun wirklich sein. Wenn ich in naechster Zeit nicht antworte bzw. garnicht mehr, dann... wundert euch nicht da ich wohl bald ins Militaer gehe und dort keinen PC haben darf (und mindestens 3 Jahre und 43 Wochen dort verbringen muss).

Vielen Dank, dass ihr alles gelesen habt und der Code/die Codes euch hoffentlich gefaellt/gefallen (wenn 10 Dateien zu viel sind, nehmt lieber den kurzen Code. Wenn ihr wollt dass anstatt Hintergrundfarben (bei dem kurzen Code also 2 Dateien) Hintergrundbilder in open.js also

Code: Alles auswählen

function addScript(JSfileName) {
var js = document.createElement('script');
js.setAttribute('type', 'text/javascript');
js.src = JSfileName+'?referer='+document.referrer;
document.body.appendChild(js);
}
	
var openNames = [""," Extra "]; 
var open1Names = ["|",""];
var openCol = ["http://nfanaticsnclan.nf.funpic.de/Chat/open2.js","http://nfanaticsnclan.nf.funpic.de/Chat/open2.js"];    

openAll=""; 
for(o=0;o<openNames.length;o++)
{openAll+= "<font color='#ffffff'>"+open1Names[o]+"<a href='javascript:void(0);' onclick='parent.mainframe.addScript(\""+openCol[o]+"\")'><font color='#00ff00'><b>"+openNames[o]+"</b></font></a>"; }   

center0=parent.info.document.getElementsByTagName("center")[0]; 
if(!center0.innerHTML.match(/parent.mainframe.addScript()/))
{center0.innerHTML+= openAll;}
als Buttons erscheinen soll, ersetzt die zwei Links also http://nfanaticsnclan.nf.funpic.de/Chat/open2.js mit den Link von bgimage.js (oder egal welcher Datei). Ich denke das sollte funktionieren, wenn nicht, dann macht sicher dass ihr beide Links ersetzt habt mit dem selben Link oder schaut ob ihr alles richtig geschrieben, rein kopiert habt.


Edit: Habe Kommentare in die Dateien gehauen, damit ihr immer wissen solltet, was ihr aendern duerft, wie mans aendern kann und was man nicht aendern darf.
Zuletzt geändert von M.E.R.255 am 10.08.2009, 00:58, insgesamt 18-mal geändert.

Samsar
Beiträge: 82
Registriert: 13.07.2009, 11:34
Wohnort: Wahrenholz (Niedersachsen)
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von Samsar » 09.08.2009, 00:15

Himmel Herrgott Sakrileg xD.... 10(!) JS-Dateien? xD... naja passt schon, gute Arbeit (habs aber noch net getestet *g*)... ^^

EDIT: Versteh ich das richtig dass NUR die open.js in die ankündigung eingebunden wird?

EDIT 2: getestet und bisher läuft alles sehr gut, vielen dank für die arbeit und den aufwand ;)

M.E.R.255
Beiträge: 32
Registriert: 29.07.2009, 08:44
Wohnort: USA, Missouri
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von M.E.R.255 » 09.08.2009, 04:32

Kein Problem^^ Naja mir war langweilig und da fallen mir immer solche Sachen ein :lol:

Ich werde mal oben hinschreiben dass nur open.js in die Ankuendigung muss, und alle anderen Dateien sollte man in einen Webspace hochladen (entweder mit einem FTP Programm die Dateien auf bplaced, funpic, ohost usw. hochladen, oder in euren Chats den Webspace nutzen (wuerde ich am meisten empfehlen) und dort alles hochladen, sowie alle Links in den Dateien aendern)

OK, ich denk das war etwas kompliziert (ich bin schlecht im erklaeren)^^" Einfach am besten alle Dateien bearbeiten und... ach ich tu einfach mal meinen vorherigen Beitrag bearbeiten/ uebersichtlicher machen^^ Wird aber dauern :lol:


Boah oO ich kann kaum glauben wie lang dieser Beitrag oben ist! Ich hoffe jemand koenne diesen Code vielleicht kuerzer erklaeren bzw. kleiner machen^^"

Oder ich finde einfach mal heraus wieso bei mir dieser Beitrag staendig hochscrollt wenn ich ihn bearbeite... (liegt vielleicht an meinen Browser oder so, ich bin wie gesagt kein Genie^^)


PS: Nennt die Dateien so wie ihr es wollt, ich wette das mit bgimage, und Bilder2 ist nicht gerade das kluegste. Man haette auch bgimage stattdessen Bilder nennen koennen usw.), macht aber klar dass die Links bei open2.js veraendert werden, sobald ihr die Namen der Dateien aendert.

Samsar
Beiträge: 82
Registriert: 13.07.2009, 11:34
Wohnort: Wahrenholz (Niedersachsen)
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von Samsar » 09.08.2009, 13:48

wollt nur kurz sagen dass ich aus testzwecken nur die wichtigsten URL's angepasst hab. gestehe also damit dass ich NOCH ein wenig traffic klaue sry, aber ich passe die dateien noch heute an^^. und außer mir (admin) kann das eh grad keiner nutzen, da ich alle scripte zum testen erst in die admin-ankündigung tue.
Naja.

ne frage: ist es beabsichtig dass man gleichzeitig z.n. die smilies und farb-buttons offen haben kann? wenn n bug is, ist es echt mal n feature xD... weil ich find das ganz gut dass man net ständig öffnen/schließen braucht sondern nur ein mal die dinger öffnen braucht die man am häufigsten nutzt ;)

M.E.R.255
Beiträge: 32
Registriert: 29.07.2009, 08:44
Wohnort: USA, Missouri
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von M.E.R.255 » 09.08.2009, 19:46

Joa, ist ein Bug xD Bzw. ich hab da was falsch gemacht, aber sooo schlimm ist das denk mal nicht. ^^ Eigendlich ist das lustig^^

Ich wuerde am liebsten den mega langen Beitrag von mir etwas leichter machen indem ich die Stellen, die man aendern darf, faerbe, und vielleicht noch Kommentare oben reinhaue^^ (also in der Datei, beginnen alle mit //, ein Beispiel waere // Hier aendert man den Namen des Buttons/Knopfes).


Am liebsten haette ich noch einen Button der Musik heisst, aber ich weiss nicht wie ich Buttons erstelle, die Hintergrundmusik abspielen =/ sonst waere das hammer :shock:

Ich wuerde dann bestimt oben im mega langen Beitrag ( :lol: ) die Datei dann einbinden und open2.js umaendern, damit ein Button namens Musik unten erscheint^^

TauchBlubba
Beiträge: 79
Registriert: 21.10.2007, 19:04
Wohnort: Altenstadt (Mittelhessen)
Kontaktdaten:

Re: Button ins Eingabeframe

Ungelesener Beitrag von TauchBlubba » 09.08.2009, 20:13

Kann man die ganzen Dateien nicht in eine machen? Sprich Button.js und dann Scripts.js ?

Kann das Beeinträchtigungen haben?

Script klappt super, wenn hier alles soweit gefixt ist ecter verfass ich das wie per PM besprochen in der Script Übersicht.

grüße
Chrissi

Antworten

Wer ist online?

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