Идея за ограничение !

dakata__92

Super Moderator
Здлавейте ! Сложих си емотикони в система за добавяне на бб код в текстово поле, но емотиконите са твърде много и ми се иска да извежда примерно 10 и другите да ги вади да кажем от линкче "Виж всички " ! Как ще стане това, при положение, че съм въвел емотиконите и тяхните съответствия в масиви ?
[js]

function bbcodetoolbar(obj)
{ //създаваме функцията за показване на bbcode editor-a
document.write("<style>.button {border: 1px solid #ccc;margin: 1px;padding: 2px;}.button:hover {filter:progid:DXImageTransform.Microsoft.Alpha(opacity=60);-moz-opacity: 0.6;opacity:0.6;}.ed {width: 400px;height: 150px;}</style>");//стила на бутоните
document.write("<div class=\"toolbar\">");
document.write("<img class=\"button\" src=\"images/bold.gif\" name=\"btnBold\" title=\"Удебеленяване\" onClick=\"addtags('','','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/italic.gif\" name=\"btnItalic\" title=\"Наклоняване\" onClick=\"addtags('','','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/underline.gif\" name=\"btnUnderline\" title=\"Подчертаване\" onClick=\"addtags('','','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/strike.gif\" name=\"btnUnderline\" title=\"Зачеркване\" onClick=\"addtags('','','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/left.png\" name=\"btnUnderline\" title=\"Подравняване в ляво\" onClick=\"addtags('[l]','[/l]','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/center.png\" name=\"btnUnderline\" title=\"Подравняване в центъра\" onClick=\"addtags('[c]','[/c]','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/right.png\" name=\"btnUnderline\" title=\"Подравняване в дясно\" onClick=\"addtags('[r]','[/r]','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/justify.png\" name=\"btnUnderline\" title=\"Двостранно подравняване\" onClick=\"addtags('[j]','[/j]','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/unordered.gif\" name=\"btnUnderline\" title=\"Списък\" onClick=\"addlist('" + obj + "','un')\">");
document.write("<img class=\"button\" src=\"images/ordered.gif\" name=\"btnUnderline\" title=\"Списък с номерация\" onClick=\"addlist('" + obj + "','or')\">");
document.write("<img class=\"button\" src=\"images/link.gif\" name=\"btnLink\" title=\"Добави линк\" onClick=\"addurl('" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/picture.gif\" name=\"btnPicture\" title=\"Добави снимка\" onClick=\"addimage('" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/linkpic.gif\" name=\"btnPicture\" title=\"Добави снимка с линк\" onClick=\"addimgurl('" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/quote.gif\" name=\"btnQuote\" title=\"Цитат\" onClick=\"addtags('
','" + obj + "')\">");
document.write("<img class=\"button\" src=\"images/code.gif\" name=\"btnQuote\" title=\"Код\" onClick=\"addtags('
Код:
','
','" + obj + "')\">");
document.write("<br><select name=\"fontcolor\" id=\"font\" onChange=\"addtags('[color='+$('#font').val()+']','[/color]','" + obj + "')\">");
document.write("<option value=\"0\" style=\"color:black\">Изберете цвят</option>");
document.write("<option value=\"black\" style=\"color:black\">Черенo</option>");
document.write("<option value=\"silver\" style=\"color:silver\">Сребро</option>");
document.write("<option value=\"gray\" style=\"color:gray\">Сиво</option>");
document.write("<option value=\"maroon\" style=\"color:maroon\">Кестеняво</option>");
document.write("<option value=\"red\" style=\"color:red\">Червено</option>");
document.write("<option value=\"navy\" style=\"color:navy\">Тъмносиньо</option>");
document.write("<option value=\"blue\" style=\"color:blue\">Синьо</option>");
document.write("<option value=\"green\" style=\"color:green\">Зелено</option>");
document.write("<option value=\"olive\" style=\"color:olive\">Маслиненозелено</option>");
document.write("<option value=\"yellow\" style=\"color:yellow;background-color:red;\">Жълто</option>");
document.write("<option value=\"white\" style=\"color:white;background-color:#ADADAD;\">Бяло</option>");
document.write("<option value=\"purple\" style=\"color:purple\">Пурпурен</option>");
document.write("</select>");
document.write("<select name=\"size\" id=\"size\" onChange=\"addtags('','','" + obj + "')\">");
document.write("<option value=\"0\">Изберете размер</option>");
document.write("<option value=\"7\">Много малък</option>");
document.write("<option value=\"9\">Малък</option>");
document.write("<option value=\"12\">Нормален</option>");
document.write("<option value=\"18\">Голям</option>");
document.write("<option value=\"24\">Много голям</option>");
document.write("</select> ");
document.write("Колони: <input type='text' name='cols' id='cols' size='1' maxlength='2'/>");
document.write("Редове: <input type='text' name='rows' id='rows' size='1' maxlength='2'/>");
document.write("<input type='button' name='addt' value='Добави таблица' onClick=\"addtable('"+obj+"')\"/>");
document.write("</div>");
document.write("<div id='smiles' style='width:600px;'></div>");//ако не искате да имате smiles махнете този ред!

var dir = "smiles/"; //въведи папката в която са картинките
var link =['smile.gif','sad.gif','laught.gif','bleh.gif','shy.gif','cool.gif','love.gif','angel.gif','bye.gif','thumbsup.gif','chin.gif','bop.gif',
'crazy.gif','mad.gif','spock.gif','explode.gif','drool.gif','popcorn.gif','icecream.gif','arms.gif','baby.gif','badday.gif','bananadance.gif',
'banned.gif','bash.gif','beer.gif','beer2.gif','biggrin.gif','blink.gif','bouncy.gif','bow.gif','cake.gif','chair.gif','cheekkiss.gif','cigar.gif',
'clap.gif','clover.gif','clown.gif','confused.gif','console.gif','cry.gif','cry2.gif','cupid.gif','drinks.gif','dry.gif','dumbells.gif','dunce.gif',
'evil.gif','evilmad.gif','excited.gif','fart.gif','fish.gif','fishing.gif','flowers.gif','gathering.gif','goodgrief.gif','greedy.gif','group.gif',
'guns.gif','happy.gif','happy2.gif','happyno.gif','happyyes.gif','hbd.gif','hooray.gif','horse.gif','hug.gif','huglove.gif','hump.gif','jawdrop.gif',
'kissing.gif','kissing2.gif','lol.gif','look.gif','lovers.gif','music.gif','no.gif','ohmy.gif','ouch.gif','poke.gif','puke.gif','rant.gif','rant2.gif',
'rofl.gif','rolleyes.gif','shoot.gif','shoot2.gif','shutup.gif','sick.gif','slaphead.gif','sleep.gif','sleeping.gif','smartass.gif','snap.gif',
'stamp.gif','stereo.gif','strongbench.gif','tears.gif','tease.gif','therethere.gif','thumbsdown.gif','unsure.gif','wavecry.gif','weakbench.gif','weirdo.gif',
'what.gif','whip.gif','whistle.gif','wiggle.gif','wink.gif','worthy.gif','wub.gif','yawn.gif','yikes.gif'];
//въведи името на всяка една картинка
var icon =[':)',':(',':D',':P','(shy)','8)','(h)','(angel)','(bye)','(thumbsup)','(chin)','(bop)','(crazy)','(mad)','(spock)',':@','(drool)',
'(popcorn)','(icecream)','(arms)','(baby)','(badday)','(bananadance)','(banned)','(bash)','(beer)','(beer2)','(biggrin)','(blink)','(bouncy)','(bow)','(cake)',
'(chair)','(cheekkiss)','(cigar)','(clap)','(clover)','(clown)','(confused)','(console)',';(',':S','(cupid)','(drinks)','(dry)','(dumbells)','(dunce)',
'(evil)','(evilmad)','(excited)','(fart)','(fish)','(fishing)','(flowers)','(gathering)','(goodgrief)','(greedy)','(group)','(guns)','(happy)','(happy2)',
'(happyno)','(happyyes)','(hbd)','(hooray)','(horse)','(hug)','(huglove)','(hump)','(jawdrop)',':*','(kissing2)','(lol)','(look)','(lovers)','(music)','(no)',
'(ohmy)','(ouch)','(poke)','(puke)','(rant)','(rant2)','(rofl)','(rolleyes)','(shoot)','(shoot2)',':X','(sick)','(slaphead)','(sleep)','(sleeping)',
'(smartass)','(snap)','(stamp)','(stereo)','(strongbench)','(tears)','(tease)','(therethere)','(thumbsdown)','(unsure)','(wavecry)','(weakbench)','(weirdo)',
'(what)','(whip)','(whistle)','(wiggle)',';)','(worthy)','(wub)','(yawn)','(yikes)'];
//въведи съответния текст(иконката) който ще се добавя в textarea-та

jQuery.each(link,
function(i,v)
{//за всяки веведен линк...
var cont = $('#smiles').html();
$('#smiles').html(cont+"<img src='"+dir+v+"' onClick=\"addtags('',' "+icon+" ','" + obj + "')\" /> ");//... ще се добавя нов img над textareata
});
}
[/js]
Код:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;  charset=UTF-8" />
<title></title>
<script src="include/BBbutons.js"  type="text/javascript"></script> 
</head>

<body style="background: #ececec;">	
<center>  
<form method="post" name="form" action="add.php" >
<script>bbcodetoolbar("area");</script> 
<input type='text' size='65' name='title'>
<textarea id="area" name="text" cols="130" rows="20"></textarea><br />
<input type="submit" name="submit" value="Добави"/><input type="reset" value="Изчисти"/>
</form>	
</center>   

</body>
</html>

4514471P.png
 
Как мога да избегна горния проблем от снимката, като дам ограничение примерно 15 емотикона и останалите да ги извежда да кажем като попъп прозорче ?

Код:
document.write("<div id='smiles' style='width:600px;'></div>");//ако не искате да имате smiles махнете този ред!
	
	var dir = "smiles/"; //въведи папката в която са картинките
	var link =['smile.gif','sad.gif','laught.gif','bleh.gif','shy.gif','cool.gif','love.gif','angel.gif','bye.gif','thumbsup.gif','chin.gif','bop.gif',
	'crazy.gif','mad.gif','spock.gif','explode.gif','drool.gif','popcorn.gif','icecream.gif','arms.gif','baby.gif','badday.gif','bananadance.gif',
	'banned.gif','bash.gif','beer.gif','beer2.gif','biggrin.gif','blink.gif','bouncy.gif','bow.gif','cake.gif','chair.gif','cheekkiss.gif','cigar.gif',
	'clap.gif','clover.gif','clown.gif','confused.gif','console.gif','cry.gif','cry2.gif','cupid.gif','drinks.gif','dry.gif','dumbells.gif','dunce.gif',
	'evil.gif','evilmad.gif','excited.gif','fart.gif','fish.gif','fishing.gif','flowers.gif','gathering.gif','goodgrief.gif','greedy.gif','group.gif',
	'guns.gif','happy.gif','happy2.gif','happyno.gif','happyyes.gif','hbd.gif','hooray.gif','horse.gif','hug.gif','huglove.gif','hump.gif','jawdrop.gif',
	'kissing.gif','kissing2.gif','lol.gif','look.gif','lovers.gif','music.gif','no.gif','ohmy.gif','ouch.gif','poke.gif','puke.gif','rant.gif','rant2.gif',
	'rofl.gif','rolleyes.gif','shoot.gif','shoot2.gif','shutup.gif','sick.gif','slaphead.gif','sleep.gif','sleeping.gif','smartass.gif','snap.gif',
	'stamp.gif','stereo.gif','strongbench.gif','tears.gif','tease.gif','therethere.gif','thumbsdown.gif','unsure.gif','wavecry.gif','weakbench.gif','weirdo.gif',
	'what.gif','whip.gif','whistle.gif','wiggle.gif','wink.gif','worthy.gif','wub.gif','yawn.gif','yikes.gif'];
	//въведи името на всяка една картинка
	var icon =[':)',':(',':D',':P','(shy)','8)','(h)','(angel)','(bye)','(thumbsup)','(chin)','(bop)','(crazy)','(mad)','(spock)',':@','(drool)',
	'(popcorn)','(icecream)','(arms)','(baby)','(badday)','(bananadance)','(banned)','(bash)','(beer)','(beer2)','(biggrin)','(blink)','(bouncy)','(bow)','(cake)',
	'(chair)','(cheekkiss)','(cigar)','(clap)','(clover)','(clown)','(confused)','(console)',';(',':S','(cupid)','(drinks)','(dry)','(dumbells)','(dunce)',
	'(evil)','(evilmad)','(excited)','(fart)','(fish)','(fishing)','(flowers)','(gathering)','(goodgrief)','(greedy)','(group)','(guns)','(happy)','(happy2)',
	'(happyno)','(happyyes)','(hbd)','(hooray)','(horse)','(hug)','(huglove)','(hump)','(jawdrop)',':*','(kissing2)','(lol)','(look)','(lovers)','(music)','(no)',
	'(ohmy)','(ouch)','(poke)','(puke)','(rant)','(rant2)','(rofl)','(rolleyes)','(shoot)','(shoot2)',':X','(sick)','(slaphead)','(sleep)','(sleeping)',
	'(smartass)','(snap)','(stamp)','(stereo)','(strongbench)','(tears)','(tease)','(therethere)','(thumbsdown)','(unsure)','(wavecry)','(weakbench)','(weirdo)',
	'(what)','(whip)','(whistle)','(wiggle)',';)','(worthy)','(wub)','(yawn)','(yikes)'];
	//въведи съответния текст(иконката) който ще се добавя в textarea-та

	jQuery.each(link, 
	function(i,v) 
	{//за всяки веведен линк...
		var cont = $('#smiles').html();
		$('#smiles').html(cont+"<img src='"+dir+v+"' onClick=\"addtags('',' "+icon[i]+" ','" + obj + "')\" /> ");//... ще се добавя нов img над textareata
	});
 
ами примерно с jQuery :

http://jqueryui.com/demos/dialog/#animated

// има линк View Source , но не забравяй да вкараш и javascript-a на jQuery-то
 
Не мога да подкарам кода от демото, за да го съединя с кода на емотиконите :
[js]
<script>
// increase the default animation speed to exaggerate the effect
$.fx.speeds._default = 1000;
$(function()
{
$( "#dialog" ).dialog(
{
autoOpen: false,
show: "blind",
hide: "explode"
});
$( "#opener" ).click(function()
{
$( "#dialog" ).dialog("open");
return false;
});
});
</script>
<div id="dialog" title="Basic dialog">
<p>This is an animated dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon.</p>
</div>
<button id="opener">Open Dialog</button>
<div class="demo-description">
<p>Dialogs may be animated by specifying an effect for the show and/or hide properties. You must include the individual effects file for any effects you would like to use.</p>
</div>
[/js]
 
Може ли някой да ми даде дизайн за този диалгов прозорец подкарах го, ноо ми се иска да е някой по-опростен дизайн, с по-разбираем код :)
 
Как да задам на този диалогов прозорец, дефаут стойностите му на големина тоест широчина и височина, да са по-големи ?
 
Хах пич... точно през последните дни правя 2-ра версия на скрипта с по-оптимизиран код и тва за емотиконите ще го има :P ползвам и http://web-tourist.net/login/login/view.php?st=3420

Ето до къде съм стигнал http://plamba.no-ip.org/bbcode%20new/ някои неща още не работят и не е довършен... когато е готов ще пиша ;)

Бих те помолил и да ми дадеш всички емотикони и 2та array да ги сложа в скрипта... ако не ти е проблем разбира се :)

Едит: Леко може би ще барна и дизайна като е готов кода да знаеш ;) :P
 
IzKuFeLiQqQqQ каза:
Хах пич... точно през последните дни правя 2-ра версия на скрипта с по-оптимизиран код и тва за емотиконите ще го има :P ползвам и http://web-tourist.net/login/login/view.php?st=3420

Ето до къде съм стигнал http://plamba.no-ip.org/bbcode%20new/ някои неща още не работят и не е довършен... когато е готов ще пиша ;)

Бих те помолил и да ми дадеш всички емотикони и 2та array да ги сложа в скрипта... ако не ти е проблем разбира се :)

Едит: Леко може би ще барна и дизайна като е готов кода да знаеш ;) :P
Никакви ядове писах ти на лично :)
 

Back
Горе