用js实现博客打赏功能


Posted in Javascript onOctober 24, 2016

前几天在一个博客中看到有一个打赏功能。其实简单说来就是在页面中加入动态DOM节点,使用的也是简单的HTML、CSS、JS这些前端的一些简单知识。在GitHub上有开源的代码,这里稍加改造就可以用在自己的博客中了。

最简单的使用方式是在页面中加入如下JS代码:

<script>
window.tctipConfig = {
    staticPrefix:  "http://static.tctip.com",
    buttonImageId: 1,
    buttonTip: "zanzhu",
    list:{
      alipay: {qrimg: "http://tctip.com/img/alipayqr.png"},
      weixin:{qrimg: "http://littlebtc.com/images/yeshen.png"},
    }
};
</script>
<script src="http://static.tctip.com/js/tctip.min.js"></script>

其中比较重要的是配置有staticPrefix,是原作者自己提供的静态文件相对路径,用来存放img和css;list是打赏方式,qrimg是设置打赏方式的二维码图片。

接下来是在博客园中使用。先在本地准备好静态文件:

JS文件,tctip.min.js;

css样式文件,myReward.css;

支付二维码,ialipay.bmp、iweixin.bmp;

支付方式图片,alipay.bmp、weixin.bmp;

赞助或者打赏按钮图片,tab_4.bmp(对应buttonImageId)。

博客园只能上传bmp图片,所以要将其他格式图片修改,然后在自己的博客园后台上传文件,这样前面的静态文件就可以使用刚刚上传了。

如果使用自己上传的静态文件,配置时就不要staticPrefix地址,提供imagePrefix和cssPrefix:

<script>
  window.tctipConfig = {
    imagePrefix: "图片文件的相对路径",
    cssPrefix:   "样式文件的相对路径",
    //staticPrefix: "http://static.tctip.com",
    buttonImageId: 4,
    buttonTip:  "dashang",
    list:{
      alipay: { qrimg: "支付宝二维码绝对路径"},
      weixin: { qrimg: "微信二维码绝对路径"},
    }};
</script>
<script src="js文件绝对路径"></script>

当然如果只是这样就完了,还是没有看作者的源JS代码,事实是不修改一下源码也无法使用的,其实主要是文件路径设置的问题。

打开JS源码,不是压缩的源码哦,除非你看的不眼花,也没人拦你的。

myConfig : {
    imagePrefix  : "",
    cssPrefix    : "",
    /***
     * 当staticPrefix不为空的时候,imagePrefix和cssPrefix失效
     */
    staticPrefix  : "",
    buttonImageId  : "3",
    buttonTip    : "dashang",
    cssUrl:  "/myRewards.css"
  },

原来的cssUrl是/css/myRewards.css,因为博客园上传的文件没有文件夹,所以去掉css。可能大家想到了,img也有一样的问题。

listConfig:{
        'alipay'  :   {icon: "alipay.bmp", name:"支付宝", desc: "支付宝打赏", className: ""},
        'tenpay'  :   {icon: "img/tenpay.png", name:"财付通", desc: "财付通打赏", className:""},
        'weixin'  :   {icon: "weixin.bmp", name:"微信", desc: "微信打赏", className:""},
        'bitcoin'  :  {icon: "img/bitcoin.png", name:"比特币", desc: "比特币打赏", className:""},
        'litecoin'  :  {icon: "img/litecoin.png", name:"莱特币", desc: "莱特币打赏",className:""},
        'dogecoin'  :  {icon: "img/dogecoin.png", name:"狗狗币", desc: "狗狗币打赏", className:""}
      },

支付方式列表中,修改图片相对路径,由于只使用了支付宝、微信两种方式,所以只修改他们的路径。其实还可以添加其他的支付方式在这里,就不赘述了。

buttonImageUrl: function(){
            var id = tctip.myConfig.buttonImageId;
            var tip = tctip.myConfig.buttonTip;
            //return tctip.imageUrl("" + tip + "/tab_" + id + ".bmp");
            return tctip.imageUrl("/tab_4.bmp");
        },

支付按钮的图片路径,同样修改返回的相对路径。

这样在博客园后台的设置页面,在页首Html处添加上面的配置文件就可以了。

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

Javascript 相关文章推荐
jQuery 获取、设置HTML或TEXT内容的两种方法
May 23 Javascript
javascript记住用户名和登录密码(两种方式)
Aug 04 Javascript
js实现的页面矩阵图形变换特效
Jan 26 Javascript
AngularJS中的指令全面解析(必看)
May 20 Javascript
Vue.js事件处理器与表单控件绑定详解
Mar 20 Javascript
angularjs过滤器--filter与ng-repeat配合有奇效
Apr 20 Javascript
BootStrap的两种模态框方式
May 10 Javascript
vue中将网页打印成pdf实例代码
Jun 15 Javascript
完美实现js拖拽效果 return false用法详解
Jul 28 Javascript
利用JS实现一个同Excel表现的智能填充算法
Aug 13 Javascript
JavaScript获取页面元素的常用方法详解
Sep 28 Javascript
JavaScript算法学习之冒泡排序和选择排序
Nov 02 Javascript
jQuery autoComplete插件两种使用方式及动态改变参数值的方法详解
Oct 24 #Javascript
jQuery插件实现可输入和自动匹配的下拉框
Oct 24 #Javascript
JS中split()用法(将字符串按指定符号分割成数组)
Oct 24 #Javascript
在js中实现邮箱格式的验证方法(推荐)
Oct 24 #Javascript
js实现上传文件添加和删除文件选择框
Oct 24 #Javascript
JS取数字小数点后两位或n位的简单方法
Oct 24 #Javascript
第一次接触Bootstrap框架
Oct 24 #Javascript
You might like
锁定年轻人的双倍活力 星巴克推出星倍醇即饮浓咖啡
2021/03/03 咖啡文化
探讨php中防止SQL注入最好的方法是什么
2013/06/10 PHP
一组PHP加密解密函数分享
2014/06/05 PHP
CI分页类首页、尾页不显示的解决方法
2016/03/28 PHP
Yii2实现ActiveForm ajax提交
2017/05/26 PHP
Gambit vs CL BO3 第三场 2.13
2021/03/10 DOTA
ASP.NET jQuery 实例2 (表单中使用回车在TextBox之间向下移动)
2012/01/13 Javascript
探讨在JQuery和Js中,如何让ajax执行完后再继续往下执行
2013/07/09 Javascript
javascript中的括号()用法小结
2014/04/14 Javascript
javascript实现控制的多级下拉菜单
2015/07/05 Javascript
JS实现可展开折叠层的鼠标拖曳效果
2015/10/09 Javascript
Vue.js 和 MVVM 的注意事项
2016/11/07 Javascript
JavaScript利用闭包实现模块化
2017/01/13 Javascript
Bootstrap Table从零开始
2017/06/30 Javascript
微信小程序实现顶部导航特效
2019/01/28 Javascript
使用js在layui中实现上传图片压缩
2019/06/18 Javascript
vue单应用在ios系统中实现微信分享功能操作
2020/09/07 Javascript
[06:44]2014DOTA2国际邀请赛-钥匙体育馆开战 开幕式振奋人心
2014/07/19 DOTA
Python自动调用IE打开某个网站的方法
2015/06/03 Python
Django自定义插件实现网站登录验证码功能
2017/04/19 Python
python机器学习之神经网络(一)
2017/12/20 Python
pytorch + visdom CNN处理自建图片数据集的方法
2018/06/04 Python
python随机在一张图像上截取任意大小图片的方法
2019/01/24 Python
python判断文件是否存在,不存在就创建一个的实例
2019/02/18 Python
LODI女鞋在线商店:阿利坎特的鞋类品牌
2019/02/15 全球购物
美国台面电器和厨具品牌:KitchenAid
2019/04/12 全球购物
为什么要做架构设计
2015/07/08 面试题
《冬阳童年骆驼队》教学反思
2014/04/15 职场文书
推普周活动总结
2014/08/28 职场文书
党员三严三实对照检查材料
2014/10/13 职场文书
安全生产警示教育活动总结
2015/05/09 职场文书
2015年路政工作总结
2015/05/22 职场文书
推销搭讪开场白
2015/05/28 职场文书
煤矿安全生产工作总结
2015/08/13 职场文书
优秀大学生申请书
2019/06/24 职场文书
如何理解python接口自动化之logging日志模块
2021/06/15 Python