Плагин для подмены символов на смайлы
Для подмены смайлов написал плагин jQuery:
(function($) {
function replacer(str, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20) {
if (p0) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Smile.png" alt=":-)"/>';
}
if (p1) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Lol.png" alt="(lol)"/>';
}
if (p2) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Happy.png" alt="(happy)"/>';
}
if (p3) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Kiss.png" alt=":*"/>';
}
if (p4) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Tongue.png" alt=":P"/>';
}
if (p5) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Wink.png" alt=";)"/>';
}
if (p6) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Blushing.png" alt=":$"/>';
}
if (p7) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Nodding.png" alt="(nod)"/>';
}
if (p8) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Thumbup.png" alt="(ok)"/>';
}
if (p9) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Laugh.png" alt=":D"/>';
}
if (p10) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Inlove.png" alt=":]"/>';
}
if (p11) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Sad.png" alt=":("/>';
}
if (p12) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Angry.png" alt="(anger)"/>';
}
if (p13) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Crying.png" alt=";("/>';
}
if (p14) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Donttalktome.png" alt="(donttalk)"/>';
}
if (p15) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Mylipsaresealed.png" alt=":x"/>';
}
if (p16) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Nerdy.png" alt="8|"/>';
}
if (p17) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Snooze.png" alt="I-)"/>';
}
if (p18) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Speechless.png" alt=":|"/>';
}
if (p19) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Surprised.png" alt=":O"/>';
}
if (p20) {
return '<img class="emotions" src="/Scripts/smiley/emotions-fb/Worried.png" alt=":s"/>';
}
}
jQuery.fn.smiley_replace = function() {
for (e = 0; e < this.length; e++) {
$(this[e]).html($(this[e]).html().replace(/(:-?\))|(\(lol\))|(\(happy\))|(:\*)|(:P)|(;\))|(:\$)|(\(nod\))|(\(ok\))|(:D)|(:])|(:\()|(\(anger\))|(;\()|(\(donttalk\))|(:x)|(8\|)|(I-\))|(:\|)|(:O)|(:s)/g, replacer));
}
}
})(jQuery);
Для области подмены назначаем css класс элементу, например^
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="http://code.jquery.com/jquery-2.2.4.js"></script>
<script type="text/javascript">
//проверяем, что функция существует.
if (typeof $.fn.smiley_replace == "function"){
$(".mytxt").smiley_replace();
}
</script>
</head>
<body>
<div id="mytxt">Текст, в котором есть весёлый:-)и печальный смайлик :-(</div>
<div id="test"></div>
</body>
</html>
Собственно сами смайлы: