javascript实现手动点赞效果


Posted in Javascript onApril 09, 2019

做移动开发的时候经常会遇到点赞的一些处理,尤其是当使用字体图标的时候,由于仅希望改变字体,但是字体经过编译之后又和它的.html()不一致,所以导致判断起来比较麻烦,最后想了一个办法来解决此问题。

还有一种点赞是点赞之后后面跟有数字,点击之后颜色变化并且数字+1,当再次点击的时候,颜色改变并且数字-1。

以下是我写的一个小例子来简单实现。

效果图如下:

 javascript实现手动点赞效果

HTML代码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>点赞</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
 <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
<link rel="stylesheet" type="text/css" href="css/style.css" >
<script src="js/Zepto.js"></script>
<script src="js/touch.js"></script>
</head>
<body>
<div class="method1">
 <p>
 <i class="iconfont icon"></i><a class="iconfont" style="display: none;" id="node"></a> 
 </p>
 <p>
 <i class="iconfont icon"></i>
 </p>
 <p>
 <i class="iconfont icon"></i>
 </p>
</div> 
<div class="method2">
 <p>
 <i class="iconfont icon"></i><span>50</span>
 </p>
 <p>
 <i class="iconfont icon"></i><span>60</span>
 </p>
 <p>
 <i class="iconfont icon"></i><span>80</span>
 </p>
</div> 
<script src="js/jss.js"></script>
</body>
</html>

css代码:

@font-face {font-family: 'iconfont';
 src: url('iconfont.eot'); /* IE9*/
 src: url('iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
 url('iconfont.woff') format('woff'), /* chrome、firefox */
 url('iconfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
 url('iconfont.svg#iconfont') format('svg'); /* iOS 4.1- */
}
.iconfont{
 font-family:"iconfont" !important;
 font-size:16px;font-style:normal;
 -webkit-font-smoothing: antialiased;
 -webkit-text-stroke-width: 0.2px;
 -moz-osx-font-smoothing: grayscale;}
*{
 margin: 0;
 padding: 0;
}
.method1 {
 color: green;
}
.method1 p,.method2 p {
 padding-left: 20px;
 margin-top: 10px;
}
.icon {
 cursor: pointer;
 font-size: 30px;
}
.method2 {
 color: #000;
}
.method2 span {
 font-size: 30px;
}

js代码:

var str = $("#node").html();
$(".method1").on("tap","i",function(){
 var html = $(this).html();
 if(html == str){
 $(this).html("");
 }else{
 $(this).html("");
 }
});
$(".method2").on("tap","p",function(){
 var color = $(this).find("i").css("color");
 var number = $(this).find("span").html();
 if(color == "rgb(0, 0, 0)"){
 $(this).find("i").css("color","#f00");
 $(this).find("span").html(number*1+1);
 }else if(color == "rgb(255, 0, 0)"){
 $(this).find("i").css("color","#000");
 $(this).find("span").html(number*1-1);
 }
})

至于字体图标可以去阿里矢量图库进行下载;

如果需要完整的代码可以到此处下载:js实现手动点赞效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js或css实现滚动广告的几种方案
Jan 28 Javascript
利用javascript的面向对象的特性实现限制试用期
Aug 04 Javascript
jQuery.extend()的实现方式详解及实例
Jun 29 Javascript
一个JavaScript防止表单重复提交的实例
Oct 21 Javascript
js阻止默认浏览器行为与冒泡行为的实现代码
May 15 Javascript
bootstrap基础知识学习笔记
Nov 02 Javascript
JavaScript中Array对象用法实例总结
Nov 29 Javascript
详解VueJS应用中管理用户权限
Feb 02 Javascript
vue 开发一个按钮组件的示例代码
Mar 27 Javascript
JS函数内部属性之arguments和this实例解析
Oct 07 Javascript
jqGrid表格底部汇总、合计行footerrow处理
Aug 21 Javascript
微信小程序制作扭蛋机代码实例
Sep 24 Javascript
实例分析Array.from(arr)与[...arr]到底有何不同
Apr 09 #Javascript
浅谈Vue.js组件(二)
Apr 09 #Javascript
4 种滚动吸顶实现方式的比较
Apr 09 #Javascript
vue响应式系统之observe、watcher、dep的源码解析
Apr 09 #Javascript
浅谈发布订阅模式与观察者模式
Apr 09 #Javascript
vue使用keep-alive保持滚动条位置的实现方法
Apr 09 #Javascript
浅谈JavaScript闭包
Apr 09 #Javascript
You might like
让你同时上传 1000 个文件 (二)
2006/10/09 PHP
PHP base64+gzinflate压缩编码和解码代码
2008/10/03 PHP
PHP 读取文件的正确方法
2009/04/29 PHP
php foreach、while性能比较
2009/10/15 PHP
深入解析php中的foreach问题
2013/06/30 PHP
php遍历删除整个目录及文件的方法
2015/03/13 PHP
PHP数学运算与数据处理实例分析
2016/04/01 PHP
PHP实现浏览器格式化显示XML的方法示例
2019/01/22 PHP
jquery 中多条件选择器,相对选择器,层次选择器的区别
2012/07/03 Javascript
Bootstrap 附加导航(Affix)插件实例详解
2016/06/01 Javascript
jQuery插件编写步骤详解
2016/06/03 Javascript
IE8兼容Jquery.validate.js的问题
2016/12/01 Javascript
Bootstrap CSS布局之代码
2016/12/17 Javascript
AngularJS Controller作用域
2017/01/09 Javascript
angular 动态组件类型详解(四种组件类型)
2017/02/22 Javascript
浅谈nodejs中的类定义和继承的套路
2017/07/26 NodeJs
详解使用Typescript开发node.js项目(简单的环境配置)
2017/10/09 Javascript
解析Vue 2.5的Diff算法
2017/11/28 Javascript
JQuery实现table中tr上移下移的示例(超简单)
2018/01/08 jQuery
JS实现点击下拉菜单把选择的内容同步到input输入框内的实例
2018/01/23 Javascript
在 Angular中 使用 Lodash 的方法
2018/02/11 Javascript
angularJs中跳转到指定的锚点实例($anchorScroll)
2018/08/31 Javascript
解析JS在获取当前月的最后一天遇到的坑
2019/08/30 Javascript
Element Notification通知的实现示例
2020/07/27 Javascript
[44:40]Serenity vs Pain 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
以一个投票程序的实例来讲解Python的Django框架使用
2016/02/18 Python
Python解决八皇后问题示例
2018/04/22 Python
python添加模块搜索路径和包的导入方法
2019/01/19 Python
Python:Numpy 求平均向量的实例
2019/06/29 Python
python中的colorlog库使用详解
2019/07/05 Python
使用 Python 写一个简易的抽奖程序
2019/12/08 Python
HTML5 中新的全局属性(整理)
2013/07/31 HTML / CSS
39美元购买一副眼镜或太阳镜:39DollarGlasses.com
2018/06/17 全球购物
2015年班组建设工作总结
2015/05/13 职场文书
详解Nginx 工作原理
2021/03/31 Servers
mysql sock文件存储了什么信息
2022/07/15 MySQL