`
axl234
  • 浏览: 268796 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

基于jQuery的QQ表情插件

 
阅读更多

HTML

首先在html页面的head中引入jQuery库文件和QQ表情插件jquery.qqFace.js文件。

<script type="text/javascript" src="jquery-1.7.2.min.js"></script> 
<script type="text/javascript" src="jquery.qqFace.js"></script> 

然后在body中加入以下html代码:

<div id="show"></div> 
<div class="comment"> 
    <div class="com_form"> 
        <textarea class="input" id="saytext" name="saytext"></textarea> 
        <p><span class="emotion">表情</span><input type="button" class="sub_btn" value="提交"></p> 
    </div> 
</div> 

页面中有一个输入框,用来输入要发表的内容,还有一个表情按钮,点击此按钮可以调用表情图片,完了就可以点击“提交”按钮发布带表情的内容了。

CSS

我们用CSS来美化页面,关键是表情按钮图片span.emotion的鼠标滑上与移开效果,以及调用表情插件后,显示的表情.qqFace面板效果,请看代码:

.comment{width:680pxmargin:20px autoposition:relative.comment h3{height:28pxline-height:28px.com_form{width:100%position:relative.input{width:99%height:60pxborder:1px solid #ccc.com_form p{height:28pxline-height:28pxposition:relativespan.emotion{width:42pxheight:20pxbackground:url(icon.gif) no-repeat 2px 2px;  
padding-left:20pxcursor:pointerspan.emotion:hover{background-position:2px -28px.qqFace{margin-top:4px;background:#fff;padding:2px;border:1px #dfe6f6 solid;} 
.qqFace table td{padding:0px;} 
.qqFace table td img{cursor:pointer;border:1px #fff solid;} 
.qqFace table td img:hover{border:1px #0066cc solid;} 
#show{width:680pxmargin:20px auto

我们在domo中还用CSS3设置了提交按钮的样式,其代码在本文中不做解释,您可以下载代码了解下。

jQuery

当我们点击页面输入框下方那个笑脸时,触发调用qqface表情插件,简单几行就搞定。

$(function(){ 
    $('.emotion').qqFace({ 
        assign:'saytext'//给输入框赋值 
        path:'face/'    //表情图片存放的路径 
    }); 
    ... 
}); 

当选择表情图片后,输入框中会插入一段如[em_5]之类的代码,代表插入的表情图片,实际应用中,点提交按钮后应该将这段表情代码连同其他内容插入到数据表中。而在页面显示的时候,我们应该将表情代码替换成真正的图片显示在页面上。下面的代码是插入表情图片后,点击提交按钮,使用javascript自定义函数将表情代码替换并显示:

$(function(){ 
    ... 
    $(".sub_btn").click(function(){ 
        var str = $("#saytext").val(); 
        $("#show").html(replace_em(str)); 
    }); 
}); 
function replace_em(str){ 
    str = str.replace(/\</g,'<;'); 
    str = str.replace(/\>/g,'>;'); 
    str = str.replace(/\n/g,'<;br/>;'); 
    str = str.replace(/\[em_([0-9]*)\]/g,'<img src="face/$1.gif" border="0" />'); 
    return str; 
} 

如果您想用PHP代码来正则替换表情图片的话,可以使用以下函数:

function ubbReplace($str){ 
    $str = str_replace(">",'<;',$str); 
    $str = str_replace(">",'>;',$str); 
    $str = str_replace("\n",'>;br/>;',$str); 
    $str = preg_replace("[\[em_([0-9]*)\]]",">img src=\"face/$1.gif\" />",$str); 
    return $str; 
} 
分享到:
评论
1 楼 panshunchang 2014-03-25  
非常感谢分享,正找这东西呢。

相关推荐

    jQuery QQ表情插件qqFace.zip

    jQuery QQ表情插件qqFace是一款专为网页设计者打造的高效工具,旨在为网页聊天、评论或表单输入等场景提供类似QQ的丰富表情选择功能。这款插件基于JavaScript库jQuery构建,它允许用户轻松地在网页上集成一组预定义...

    JQuery QQ表情插件

    而QQ表情插件则是基于jQuery开发的,用于在网页中集成和管理QQ风格的表情图标。 **工作原理**: 1. **导入文件**:为了使用这个插件,我们需要在HTML文件中引入jQuery库(如果尚未引入)以及QQ表情插件的JavaScript...

    jQuery QQ表情插件jquery.qqFace.js

    本文将深入探讨基于jQuery的QQ表情插件——jquery.qqFace.js,它为网页提供了一种便捷的方式来实现QQ风格的表情选择与插入功能。 一、jQuery简介 jQuery是一款轻量级、高性能的JavaScript库,它简化了HTML文档遍历...

    QQ表情jQuery插件

    通过查看和分析这个文件,开发者可以学习到如何引入jQuery库和QQ表情插件,以及如何调用相关的API方法来启用表情功能。 在使用QQ表情jQuery插件时,开发者首先需要在HTML文档中引入jQuery库和插件的JS与CSS文件。...

    基于jQuery实现的QQ表情特效插件qqFace

    QQFace是一款基于jQuery库开发的表情特效插件,它旨在为Web应用添加类似QQ聊天中的丰富表情功能,增强用户的交互体验。这款插件以其简洁的API和流畅的用户体验,深受前端开发者喜爱。在本文中,我们将深入探讨QQFace...

    通过jQuery实现的仿QQ Emoji表情包H5插件

    【jQuery实现的仿QQ Emoji表情包H5插件】是一种基于JavaScript库jQuery的网页组件,主要用于在Web聊天或社交应用中实现类似QQ的表情输入功能。这个插件利用HTML、CSS和JavaScript技术,使得用户能够在输入框中方便地...

    基于jQuery实现的QQ表情插件

    而本文所提及的QQ表情插件正是基于jQuery构建的一个实用功能模块。 ### jQuery的介绍 jQuery库是对JavaScript编程语言的一个封装,它通过提供更简洁、易用的API来简化了HTML文档遍历、事件、动画、Ajax等操作。...

    基于jQuery实现的QQ表情特效插件qqFace.zip

    QQFace是一款基于jQuery库开发的表情特效插件,它旨在为Web应用提供类似QQ聊天软件的丰富表情选择功能,提升用户在网页上的互动体验。这款插件不仅提供了多种表情图标,还实现了点击表情后自动插入到输入框中的效果...

    jquery实现的qq表情插件.zip

    本篇文章将详细探讨一个基于jQuery实现的QQ表情插件,帮助开发者更好地理解和运用此类插件,提升聊天或评论功能的用户体验。 首先,我们需要理解jQuery的核心理念——"Write Less, Do More"。它通过封装JavaScript...

    基于Jquer的qq表情插件

    【基于jQuery的QQ表情插件】是一款用于网页端的交互式表情管理工具,它借助JavaScript库jQuery的强大功能,为用户提供类似QQ聊天应用中的表情选择和插入功能。在网页设计和开发中,这样的插件能够增强用户在表单、...

    jquery qq表情

    这个基于jQuery的QQ表情插件设计的核心目标是提供一套简单易用的API,以便开发者能够快速地在自己的项目中添加表情功能。插件通常包含以下几个主要部分: 1. **表情库**:在提供的文件中,"face"目录可能包含了所有...

    jQuery QQ表情插件qqFace特效代码

    jQuery QQ表情插件qqFace是为网页应用设计的一款高效、易用的富文本编辑器增强工具,它使得用户在编辑内容时可以方便地插入各种QQ风格的表情图标,从而提升用户体验,尤其是在社交网络、论坛或者博客等需要用户进行...

    新浪1630个表情插件

    QQ表情插件标签暗示了这款插件可能借鉴了QQ的流行表情设计,使用户能够识别并迅速找到他们想要的表情符号。 新浪1630个表情插件的核心功能包括: 1. **表情库**:包含1630个不同的表情,这个数量远超许多其他同类...

    qq表情插件HTML版本

    总结来说,QQ表情插件HTML版本是一个前端开发工具,它利用HTML和jQuery实现用户在网页中便捷插入表情的功能。通过理解并掌握其中涉及的HTML结构、jQuery操作以及源码组织,开发者可以创建或定制符合自己需求的互动式...

    飞飞表情插件

    飞飞表情插件是一款专为增强在线聊天和社交媒体体验而设计的工具,它结合了QQ聊天的魔法表情和微博或空间中的表情选择框,提供了一种精致且丰富的表情选择方式。这款插件基于jQuery库,使得在网页应用中集成表情功能...

    jQuery qqFace QQ表情插件 论坛 留言本专用

    一个基于jQuery的QQ表情插件qqFace使用例子,特别适合用于论坛、留言本、评论等模块中,应用后只需点击“表情”按钮后,会展开所有的QQ表情列表,点击表情后会自动添加到文本框中。 运行环境:HTML/PHP/ASP/

    评价QQ_Jquery表情

    在本例中,文件名“qq表情_jquery”可能是一个包含这些表情图片和相应JavaScript代码的资源文件夹。代码可能包含了如何从服务器获取表情图片URL,以及如何在页面上创建和管理这些表情元素的逻辑。 此外,评价系统的...

Global site tag (gtag.js) - Google Analytics