hallo liebe community.
bitte entschuldigt den etwas komischen titel.
aber ich habe folgendes problem. ich habe ein script, was eine zusätzliche leiste in jedem wbb-board einfügt(in dem falle smileys) und durch klicken auf diese werden die img-tags incl der bildurl eingefügt.
soweit so gut.
ABER das gleiche script, funktioniert NICHT in vbulletin-boards.
mein verdacht, das es an dem smiley.push liegt.
denn durch klicken auf das smiley passiert NICHTS.
jetzt werden einige sagen, das jeder admin smileys einfacher hinzufügen kann. nunja, nur ich bin kein admin in dem forum.
in dem beschribenen fall, benätigt man ja auch keinen vb-code für die smileys. denn es werden ja einfach nur dir vorgegeben grafiken eingefügt.
hier der code..(das sind die ersten zeilen:
ich hoffe, ihr könnt mir helfen. danke im vorraus
bitte entschuldigt den etwas komischen titel.
aber ich habe folgendes problem. ich habe ein script, was eine zusätzliche leiste in jedem wbb-board einfügt(in dem falle smileys) und durch klicken auf diese werden die img-tags incl der bildurl eingefügt.
soweit so gut.
ABER das gleiche script, funktioniert NICHT in vbulletin-boards.
mein verdacht, das es an dem smiley.push liegt.
denn durch klicken auf das smiley passiert NICHTS.
jetzt werden einige sagen, das jeder admin smileys einfacher hinzufügen kann. nunja, nur ich bin kein admin in dem forum.
in dem beschribenen fall, benätigt man ja auch keinen vb-code für die smileys. denn es werden ja einfach nur dir vorgegeben grafiken eingefügt.
hier der code..(das sind die ersten zeilen:
Code:
smilies = new Array();
smilies.push(new Array("[ img]http://bildurl.de/images/smilies/crying.gif[ /img]","http://bildurl.de/images/smilies/crying.gif"));
if (document.location.href.indexOf('=messages') != -1) {
function sort_smilies(a,b) { return b[0].length-a[0].length; }
smilies.sort(sort_smilies);
var messages = document.evaluate("//tr/th/input[2]/../../preceding::tr[1]/td[@colspan and @class='b']", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);
for (var i = 0; i < smilies.length; i++) {
var smiley = smilies[i][0];
smiley = smiley.replace(/\\/g,"\\\\");
smiley = smiley.replace(/\[/g,"\\\[").replace(/\]/g,"\\\]");
smiley = smiley.replace(/\(/g,"\\\(").replace(/\)/g,"\\\)");
smiley = smiley.replace(/\{/g,"\\\{").replace(/\}/g,"\\\}");
smiley = smiley.replace(/\./g,"\\\.").replace(/\+/g,"\\\+").replace(/\*/g,"\\\*").replace(/\?/g,"\\\?");
smiley = smiley.replace(/\^/g,"\\\^").replace(/\$/g,"\\\$").replace(/\|/g,"\\\|").replace(/\-/g,"\\\-");
var expression = new RegExp("(^|[^\"'])"+smiley+"([^\"']|$)","gi");
for (var j = 0; j < messages.snapshotLength; j++) {
var thisMessage = messages.snapshotItem(j);
thisMessage.innerHTML = thisMessage.innerHTML.replace(expression,"$1<img src='"+smilies[i][1]+"' alt='"+smilies[i][0]+"' border='0' />$2");
}
}
} else {
var script = document.createElement('span');
script.innerHTML = '<script type="text/javascript" language="javascript">function addSmiley(smiley) { var message = document.getElementsByName("text")[0]; var str = " " + smiley; message.focus(); var start = message.selectionStart; var starttext = message.value.substring(0,start); var endtext = message.value.substring(message.selectionEnd,message.textLength); message.value = starttext + str + endtext; start += str.length; message.selectionStart = start; message.selectionEnd = start; message.focus(); }</script>';
var form = document.getElementsByTagName('form')[0];
form.parentNode.insertBefore(script,form);
var table = document.evaluate("//textarea/ancestor::table[1]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue;
var row = document.createElement("tr");
var cell = document.createElement("th");
cell.setAttribute("colspan","2");
row.appendChild(cell);
table.appendChild(row);
for (var i = 0; i < smilies.length; i++) {
cell.innerHTML += "<a href=\"javascript:addSmiley('"+smilies[i][0]+"')\"><img src='"+smilies[i][1]+"' alt='"+smilies[i][0]+"' border='0' /></a> ";
}
}
ich hoffe, ihr könnt mir helfen. danke im vorraus