不废话了,先给大家展示效果图:

我们在QQ聊天或者发表评论、微博时,会有一个允许加入表情的功能,点击表情按钮,会弹出一系列表情小图片,选中某个表情图片即可发表的丰富的含表情的内容。今天和大家分享一款基于jQuery的QQ表情插件,您可以轻松将其应用到你的项目中。

HTML

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

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

表情

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

CSS

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

.comment{width:680px; margin:20px auto; position:relative}

.comment h3{height:28px; line-height:28px}

.com_form{width:100%; position:relative}

.input{width:99%; height:60px; border:1px solid #ccc}

.com_form p{height:28px; line-height:28px; position:relative}

span.emotion{width:42px; height:20px; background:url(icon.gif) no-repeat 2px 2px;

padding-left:20px; cursor:pointer}

span.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:680px; margin: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(/\

str = str.replace(/\>/g,'>;');

str = str.replace(/\n/g,';');

str = str.replace(/\[em_([0-9]*)\]/g,'');

return str;

}

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

function ubbReplace($str){

$str = str_replace(">",'

$str = str_replace(">",'>;',$str);

$str = str_replace("\n",'>;br/>;',$str);

$str = preg_replace("[\[em_([0-9]*)\]]",">img src=\"face/$1.gif\" />",$str);

return $str;

}

以上内容就是本文对基于jQuery实现的QQ表情插件的详细介绍,希望大家喜欢。

qq表情包html插件,基于jQuery实现的QQ表情插件相关推荐

  1. html登入弹框插件,基于jQuery的弹出框插件

    html如下: $(function() { $("#btn01").popwin({ element: "#box01", title: "请填写以 ...

  2. 基于jQuery的表单验证插件:jValidate

    网上基于jQuery的表单验证插件已有很多,但是这个轮子我还是继续做一个,因为这个表单验证插件是从我以前的个人JS框架移值过来的(我已慢慢投入jQuery的怀抱),并且它的验证规则书写方式也许会让你眼 ...

  3. div alert html,基于jQuery的弹出消息插件 DivAlert之旅(一)

    想着自己学习Javascript,以及Ajax.jQuery等已经有一段时间了,不过貌似还没有写过一个插件,看到jQuery官网上那么多令人眼前一亮的插件,自己今天也动心说是不是能够写一个类似的插件来 ...

  4. 推荐20款基于 jQuery CSS 的文本效果插件

    jQuery 和 CSS 可以说是设计和开发行业的一次革命.这一切如此简单,快捷的一站式服务.jQuery 允许你在你的网页中添加一些真正令人惊叹的东西而不用付出很大的努力,要感谢那些优秀的 jQue ...

  5. 基于jquery的锚点滚动插件(百度百科效果) anchorScroll.js

    1.插进使用场景 请打开https://baike.baidu.com/item/日本动画#hotspotmining,查看百度百科页面效果. 2.插件源代码(更新 2017-08-28): jQue ...

  6. 基于JQuery 编写轮播图插件

    基于JQuery 编写轮播图插件 不管是实际开发还是平时的小项目中 ,页面一定有且多个的轮播图,那么为了效率大家可以考虑封装这样的小插件.下面一起看看他的使用方法吧 使用需要准备(往下滑动会看到): ...

  7. 设置网页便签 html5,基于jQuery的页面便签插件

    color-sticker是一款基于jQuery的页面便签插件.它是一个可以任意拖拽,保存,删除,导入和定制颜色的页面便签插件.主要的功能点有以下几点: 点击右上方的蓝色+按钮,可以在页面中添加一个便 ...

  8. 斗图表情包爬虫(基于多线程)

    今天写一下关于多线程的爬虫,这次我们爬取的是斗图网站的表情包. 一. 思路: 1.对网站翻页链接进行分析,发现链接为:"http://www.doutula.com/article/list ...

  9. 计算机系专用表情包,计算机学起来挺有意思的表情包 - 计算机学起来挺有意思的微信表情包 - 计算机学起来挺有意思的QQ表情包 - 发表情 fabiaoqing.com...

    这世界挺有意思的没意思的是我!(熊猫头)_挺有_没意思_熊猫_意思_世界表情 这世界挺有意思的没意思的是我(熊猫头)_挺有_没意思_熊猫_意思_世界表情 电子城轨通信计算机:快看!那个学会计的上吊了_ ...

  10. 抖音表情包项目怎么变现?普通人如何制作表情包短视频月入过万?

    抖音表情包玩法的本质还是遵循以下公式,即:内容生产(素材.文案.视频制作)+引流+变现. 其实很简单,这个项目的核心玩法就是通过在某音某手上发布各种搞笑.逗比的表情包视频,吸引来的用户一是用来涨粉,还 ...

最新文章

  1. python实现简单的http服务器_Python实现简单HTTP服务器(二)
  2. Python 中的属性访问与描述符
  3. AccountManagment
  4. 第5章--高级数据管理
  5. 面试题5,接口和抽象类的区别
  6. Windows服务器学习篇:服务器连接与退出
  7. kafka实现异步发送_深入理解Kafka的发送流程
  8. oracle apex 日志,oracle-apex - 在oracle apex报告中显示员工记录或经理记录及其员工 - SO中文参考 - www.soinside.com...
  9. 大话设计模式读书笔记10----外观模式(Facade)
  10. js右下角广告[兼容]
  11. 调试器---镜像劫持
  12. Java 打印100以内的所有奇数和偶数
  13. win7系统rpc服务器不可用无法开机,win7系统RPC服务器不可用的解决方法
  14. 基于Revel+Layui框架快速入门教程
  15. 一个简单的(基于redisson的)分布式同步工具类封装
  16. Excel数据分析—饼图/圆环图
  17. 有一种女人,她们并不漂亮,但看上去却很舒服!
  18. 关于出差,也是外包的一些事情
  19. TP6 TP5 Db‘ not found
  20. C++11 强类型枚举和普通枚举

热门文章

  1. VS2017 CUDA编程学习实例3:CUDA实现直方图统计
  2. python代码文件生成exe文件
  3. win7 计算机 局域网共享,win7局域网一键共享工具(教程)
  4. 鸟哥的Linux私房菜服务器架设篇 第三版
  5. 高等数学(第七版)同济大学 习题1-8 个人解答
  6. 《算法第四版》学习心得一——怎么学算法
  7. HiJson工具 火狐浏览器中的jsonHandle插件(以及乱码问题的解决)--来转换json串的格式
  8. iOS 常见的六种 手势
  9. ubuntu 系统获取和阅读 linux 源码
  10. Python定时任务框架APScheduler详解