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 相关文章推荐
javascript下有关dom以及xml节点访问兼容问题
Nov 26 Javascript
javascript 关闭IE6、IE7
Jun 01 Javascript
js获取单元格自定义属性值的代码(IE/Firefox)
Apr 05 Javascript
JavaScript中pop()方法的使用教程
Jun 09 Javascript
JavaScript中的Math.SQRT1_2属性使用简介
Jun 14 Javascript
jQuery学习笔记之回调函数
Aug 15 Javascript
jQuery解析XML 详解及方法总结
Sep 28 Javascript
使用JavaScript进行表单校验功能
Aug 01 Javascript
vue中的.$mount('#app')手动挂载操作
Sep 02 Javascript
解决vue-pdf查看pdf文件及打印乱码的问题
Nov 04 Javascript
vue.js+element 默认提示中英文操作
Nov 11 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
Nov 16 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
PHP下利用header()函数设置浏览器缓存的代码
2010/09/01 PHP
php中怎么搜索相关联数组键值及获取之
2013/10/17 PHP
php操作xml
2013/10/27 PHP
PHP扩展程序实现守护进程
2015/04/16 PHP
通过PHP自带的服务器来查看正则匹配结果的方法
2015/12/24 PHP
CI框架AR操作(数组形式)实现插入多条sql数据的方法
2016/05/18 PHP
Linux下快速搭建php开发环境
2017/03/13 PHP
PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例
2019/03/01 PHP
很多人都是用下面的js刷新站IP和PV
2008/09/05 Javascript
ExtJS 2.0实用简明教程 之获得ExtJS
2009/04/29 Javascript
JQuery1.4+ Ajax IE8 内存泄漏问题
2010/10/15 Javascript
禁止页面刷新让F5快捷键及右键都无效
2014/01/22 Javascript
javascript模拟C#格式化字符串
2015/08/26 Javascript
jQuery zclip插件实现跨浏览器复制功能
2015/11/02 Javascript
三种带箭头提示框总结实例
2016/06/14 Javascript
AngularJS入门教程之更多模板详解
2016/08/19 Javascript
详解Vue.js——60分钟组件快速入门(上篇)
2016/12/05 Javascript
Nodejs实现短信验证码功能
2017/02/09 NodeJs
lhgcalendar时间插件限制只能选择三个月的实现方法
2017/07/03 Javascript
Vue 去除路径中的#号
2018/04/19 Javascript
vue-router 源码实现前端路由的两种方式
2018/07/02 Javascript
微信小程序实现页面跳转传递参数(实体,对象)
2019/08/12 Javascript
layui的表单提交以及验证和修改弹框的实例
2019/09/09 Javascript
[01:36]极致酷炫!TI9典藏宝瓶+撼地者至宝展示
2019/06/11 DOTA
Python实现的手机号归属地相关信息查询功能示例
2017/06/08 Python
Python Grid使用和布局详解
2018/06/30 Python
python中int与str互转方法
2018/07/02 Python
浅析Python __name__ 是什么
2020/07/07 Python
CSS3弹性盒模型flex box快速入门心得(必看篇)
2016/05/24 HTML / CSS
We Fashion荷兰:一家国际时装公司
2018/04/18 全球购物
简历自我评价模版
2014/01/31 职场文书
历史专业学生的自我评价
2014/02/28 职场文书
物流管理专业毕业生求职信
2014/03/23 职场文书
个人思想政治总结
2015/03/05 职场文书
Vue Element-ui表单校验规则实现
2021/07/09 Vue.js
小喇叭开始广播了! 四十多年前珍贵老照片
2022/05/09 无线电