Ajax-Chat Smilies erst laden wenn Chat geladen ist - Druckversion +- MyBB.de Forum (https://www.mybb.de/forum) +-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html) +--- Forum: Plugin-Diskussionen (https://www.mybb.de/forum/forum-38.html) +--- Thema: Ajax-Chat Smilies erst laden wenn Chat geladen ist (/thread-13011.html) |
Ajax-Chat Smilies erst laden wenn Chat geladen ist - RhymeFront - 16.04.2009 Sorry wenn ich nochmal mit diesem Chat nerve, aber ihr seit die Kompetentesten Menschen hier lol . Also ich habe die Smilie Box modifiziert und sie ist in einem unsichtbaren div (display:none und bei nem klick auf den Button "Smilie" öffnet sich dieses Div. Nun werden die Smilies von Haus aus mit dem Chat geladen, was zu folge hat das das ganze Laden extrem lange dauert weil wir ultra viele Smilies haben, die wir aber auch nicht missen möchten weil wir von webkicks rüberwechseln auf unsern Chat. Und die User sind es halt gewohnt diese Smilies nutzen zu können. Ist es irgendwie möglich das die Smilies erst bei dem Klick auf Smilies geladen werden ? Hier mal der Ausschnitt aus der loggedin.html PHP-Code: <div id="bbCodeContainer"> und hier aus der chat.js ein schnipsel, ich hoffe das es die stelle ist aber ich glaube schon: Zitat: initEmoticons: function() { Vorher wird noch initialisiert auch in der chat.js..... Zitat:initialize: function() { Konnte sonst nirgendwo was von Emoticon's finden. Habe schon rumprobiert und hin und her geschoben, hab halt kaum ahnung von dem mist Hoffe ihr könnt damit was anfangen und mir Helfen EDIT: ODER IST ES MÖGLICH DAS DIE SMILIES ZUMINDEST ALS LETZTES GELADEN WERDEN ? SO DAS ALLES STEHT UND DANN IM NACHHINEIN DIE SMILIES GELADEN WERDEN ? RE: Ajax-Chat Smilies erst laden wenn Chat geladen ist - RhymeFront - 17.04.2009 ok haben einen weg gefunden . Kann geclosed werden ^^ RE: Ajax-Chat Smilies erst laden wenn Chat geladen ist - Michael - 17.04.2009 Könntest du den bitte noch hier für andere veröffentlichen? RE: Ajax-Chat Smilies erst laden wenn Chat geladen ist - RhymeFront - 17.04.2009 Klar, sorry hab wieder nur so weit gedacht wie ein Pferd ... Lassen wir das lol Also öffne die js/chat.js und suche nach: PHP-Code: this.initEmoticons(); Entferne dort das "this.initEmoticons();" Suche weiter in der js/chat.js folgendes: PHP-Code: initEmoticons: function() { Klammer es einfach aus als vor "initEmoticons: function() {" ein /* und nach der letzten klammer der funtkion "}," , ein */... Man kanns auch ganz löschen Nun wird der Emoticoncontainer nicht mehr geladen. Keine angst die Smilies werden im Chatfenster dennoch angezeigt. Ich habe nun noch ein Popup gemacht in dem ich alles Smilies fein säuberlich aufführe und halt zum anklicken gemacht habe, das sieht dann so aus: Codeschnipsel aus meiner smilie.html: PHP-Code: <table width="0" border="0"> Kann man natürlich machen wie man das selber haben will, wichtig ist das "javascript:opener.ajaxChat.insertText('dein smilie code hier')" damit der Smiliecode in das Textfeld dess Chats geschrieben wird ... Such in der lib/templates/loggedin.html PHP-Code: <div id="bbCodeContainer"> Füge darunter ein: PHP-Code: <input type="button" value="Smilies" alt="Smilies2" onclick='rl=window.open("http://deinesmilieseite.de","Smilies","scrollbars=yes,width=500,height=600,resizable=yes,toolbar=no,status=no,directories=no,menubar=no,location=no");rl.focus();' /> Du musst natürlich trotzdem in der config.js deine Smilie-codes und den Namen dess Gifs oder was auch immer du für eine Art von Bild hast, in den arrays angeben damit er sie replacen kann im Chatfenster. Ist also ein haufen arbeit, aber der Chat läd 10 mal schneller da er am anfang diesen dummen emoticoncontainer nicht läd. Ich hoffe ihr versteht das , bin nicht so der Held im erklären ! gruß alex EDIT: Wie ich den Focus auf des Textfeld setze hab ich noch n icht herrausbekommen... |