M Mira Medlem sedan maj 2001 966 inlägg Frågan 24 aug. 2005 16:04 #1 Har letat här på forumet och försökt förstå hur jag ska lösa detta, men behöver mer hjälp.
Jag har tagit smiley-koden från mitt forum och vill nu göra så att jag kan använda den i en gästbok.
I koden fanns javascripet:
function AddSmileyIcon(iconCode) {
window.opener.document.frmAddMessage.message.value += iconCode + " ";
}
och vid varje smiley står det:
<img src="smileys/smiley2.gif" border="0" alt="[;)]" onClick="AddSmileyIcon('smileys/smiley2.gif')" style="cursor: hand;">
Kan jag använda samma kod?
Och i såfall - vad ska jag ändra på för att den ska hitta min gästbok?
P Peter S Medlem sedan dec. 2002 5 483 inlägg Finns smileyfigurerna i ett popupfönster och, i sådana fall, skall de (vid klick) inkluderas i en <textarea> i huvudfönstret?
P Peter S Medlem sedan dec. 2002 5 483 inlägg function AddSmileyIcon(iconCode) {
window.opener.document.forms["[b]namn_på_formulär[/b]"].elements["[b]namn_på_textarea[/b]"].value += iconCode + " ";
}
M Mira Medlem sedan maj 2001 966 inlägg Behövs något mer...
Det som hamnar i textarean är adressen "smileys/smiley2.gif".
Bilden syns inte i meddelandet.
Måste jag ha en Replace för att bilden ska synas...?
Hur skulle den i såfall se ut?
P Peter S Medlem sedan dec. 2002 5 483 inlägg Japp
<img src="smileys/smiley2.gif" border="0" alt="[;)]" onClick="AddSmileyIcon([b]';)'[/b])" style="cursor: hand;">
Sedan får du göra en replace på alla ;) med <img src="smileys/smiley2.gif">.
M Mira Medlem sedan maj 2001 966 inlägg Ahh... äntligen fick jag till det.
Det är tydligen noga med i vilken ordning Replacen ligger om man har fler än 1.
En sak till.
Jag hittade på forumet en kod (som du skrivit) för att få smileyn att hamna där markören står.
Kan jag få in den i min kod på nått vis?
Har du lust att visa mej hur?
http://www.webforum.nu/showthread.php?s=&postid=972293#post972293
P Peter S Medlem sedan dec. 2002 5 483 inlägg Huvudsidan (notera att du får byta ut det fetstilta mot det som passar dig):
<script type="text/javascript">
var cPos,
fObj,
ieC = Boolean(document.selection && document.selection.createRange);
function smilie(str) {
if (ieC) {
if (typeof cPos != "undefined")
cPos.text = str;
else
fObj.value = str;
}
else if (typeof window.HTMLTextAreaElement != "undefined")
fObj.value = fObj.value.substring(0, fObj.selectionStart) + str + fObj.value.substring(fObj.selectionEnd);
else fObj.value += str;
}
function sC() {
cPos = document.selection.createRange().duplicate();
}
window.onload = function() {
fObj = document.forms["[b]namn_på_formulär[/b]"].elements["[b]namn_på_textarea[/b]"];
if (ieC) {
fObj.onclick = function() { sC(); }
fObj.onkeyup = function() { sC(); }
fObj.onselect = function() { sC(); }
}
}
</script>
<form name="[b]namn_på_formulär[/b]">
<textarea cols="20" rows="5" name="[b]namn_på_textarea[/b]"></textarea>
</form>
Istället för funktionen AddSmileyIcon() använder du smilie(), like so:
<img src="smileys/smiley2.gif" border="0" alt="[;)]" onClick="[b]window.opener.smilie(';)')[/b]" style="cursor: hand;">
M Mira Medlem sedan maj 2001 966 inlägg Tack så jättemycket för hjälpen!
P Peter S Medlem sedan dec. 2002 5 483 inlägg Härligt! Då är det bara acceptera som slutgiltigt svar kvar ;)