自制简易打赏功能的实例


Posted in Javascript onSeptember 02, 2017

1、申请开通cnblogs的JS代码支持

自制简易打赏功能的实例

2、将微信收款码图片上传到cnblogs

自制简易打赏功能的实例

3、将如下代码中的http://files.cnblogs.com/files/eritpang/weixin.bmp替换为刚刚上传的收款码图片的链接地址,然后将代码添加到设置->博客侧边栏公告(支持HTML代码)(支持JS代码)里面,再点击“保存”即可。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
  <meta http-equiv="Content-Type" content="text/html;" />
  <title>打赏</title>
  <style type="text/css">
    #dsSidebar {
      z-index: 999999;
      top: 18%;
      width: 200px;
      height: 200px;
      position: fixed;
      right: -200px;
    }

    #dsBtn {
      z-index: 999999;
      width: 30px;
      height: 58px;
      left: -30px;
      top: 80px;
      line-height: 28px;
      position: absolute;
    }

    .dsPanels {
      margin: 0px auto;
      overflow: hidden;
    }

    .dsPanel {
      float: left;
      margin: 0px 0px;
      padding: 12px 0px;
      text-align: center;
      background: #ffeedd;
      border-color: #ffeedd;
      border-radius: 8px;
    }

    .dsPanel-highlight {
      margin-top: 0;
      margin-bottom: 0;
      padding-left: 10px;
      padding-right: 10px;
      width: 160px;
      border: 8px solid #fd935c;
    }

    .dsPanel-button {
      display: block;
      font-size: 16px;
      font-weight: 500;
      color: #ffeedd;
      text-align: center;
      text-decoration: none;
      text-shadow: 0 1px rgba(black, .1);
      background: #fd935c;
      border-bottom: 2px solid #cf7e3b;
      border-color: rgba(black, .15);
      border-radius: 4px;
    }

    .dsPanel-title {
      width: 128px;
      margin: -15px auto 15px;
      padding-bottom: 0px;
      line-height: 22px;
      font-size: 14px;
      font-weight: bold;
      color: #ffeedd;
      text-shadow: 0 1px rgba(black, .05);
      background: #fd935c;
      border-radius: 0 0 4px 4px;
    }
  </style>
  <script>
    function moveBtn() {
      var dsBtn = document.getElementById("dsBtn");
      var now = new Date();
      var times = now.getTime();
      var offsetSize = Math.sin(times / 380.0) * 15 + 45;
      var radius = Math.sin(times / 380.0) * 18 + 24;
      dsBtn.style.left = -offsetSize + 'px';
      dsBtn.style.width = offsetSize + 'px';
      dsBtn.style.borderRadius = radius + 'px';
      setTimeout(moveBtn, 60);
    }

    var dsSidebarTimer = null;
    var dsSidebarOffsetRight = -200;
    function startMove(dsSidebarTarget, dsSidebarSpeed) {
      clearTimeout(dsSidebarTimer);
      function doMove() {
        var dsSidebar = document.getElementById('dsSidebar');
        dsSidebarSpeed *= 0.9;
        if (dsSidebarSpeed > -1 && dsSidebarSpeed < 0) {
          dsSidebarSpeed = -1;
        } else if (dsSidebarSpeed < 1 && dsSidebarSpeed > 0) {
          dsSidebarSpeed = 1;
        }
        dsSidebarOffsetRight = dsSidebarOffsetRight + dsSidebarSpeed;
        if (dsSidebarSpeed > 0 && dsSidebarOffsetRight >= dsSidebarTarget) {
          dsSidebarOffsetRight = dsSidebarTarget;
          dsSidebar.style.right = dsSidebarOffsetRight + 'px';
        } else if (dsSidebarSpeed < 0 && dsSidebarOffsetRight <= dsSidebarTarget) {
          dsSidebarOffsetRight = dsSidebarTarget;
          dsSidebar.style.right = dsSidebarOffsetRight + 'px';
        } else {
          dsSidebar.style.right = dsSidebarOffsetRight + 'px';
          dsSidebarTimer = setTimeout(doMove, 30);
        }
      }
      doMove();
    }
    document.getElementById('dsImg').onload = function () {
      var dsSidebar = document.getElementById('dsSidebar');
      dsSidebar.onmouseover = function () {
        startMove(0, 24);
      }
      dsSidebar.onmouseout = function () {
        startMove(-200, -24);
      }
      moveBtn();
    }
  </script>
</head>

<body>
  <div id="dsSidebar">
    <div class="dsPanels">
      <div class="dsPanel dsPanel-highlight">
        <p class="dsPanel-title">喜欢请用微信打赏</p>
        <img id='dsImg' src="http://files.cnblogs.com/files/eritpang/weixin.bmp" alt="" width="160" height="160" />
      </div>
    </div>
    <span class="dsPanel-button" id='dsBtn'><b>打<br/>赏</b></span>
  </div>
</body>

</html>

4、效果如下。

自制简易打赏功能的实例

以上这篇自制简易打赏功能的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用javascript动态调整iframe高度的代码
Apr 10 Javascript
jQuery中多个元素的Hover事件解决方案
Jun 12 Javascript
jQuery实现的输入框选择时间插件用法实例
Feb 28 Javascript
表单验证插件Validation应用的实例讲解
Oct 10 Javascript
Javascript类型系统之undefined和null浅析
Jul 13 Javascript
BootStrap Validator使用注意事项(必看篇)
Sep 28 Javascript
AngularJS过滤器filter用法分析
Dec 11 Javascript
基于jQuery封装的分页组件
Jun 26 jQuery
jQuery ajax读取本地json文件的实例
Oct 31 jQuery
微信小程序实现图片放大预览功能
Oct 22 Javascript
HTML5+JS+JQuery+ECharts实现异步加载问题
Dec 16 jQuery
Vue通过for循环随机生成不同的颜色或随机数的实例
Nov 09 Javascript
Vue使用vue-cli创建项目
Sep 01 #Javascript
vue 里面使用axios 和封装的示例代码
Sep 01 #Javascript
ionic2懒加载配置详解
Sep 01 #Javascript
javascript 中事件冒泡和事件捕获机制的详解
Sep 01 #Javascript
Vue的Class与Style绑定的方法
Sep 01 #Javascript
Angular中封装fancyBox(图片预览)遇到问题小结
Sep 01 #Javascript
BootStrap模态框和select2合用时input无法获取焦点的解决方法
Sep 01 #Javascript
You might like
截获网站title标签之家内容的例子
2006/10/09 PHP
childNodes.length与children.length的区别
2009/05/14 Javascript
前端开发必须知道的JS之原型和继承
2010/07/06 Javascript
JavaScript 的继承
2011/10/01 Javascript
js 数组操作之pop,push,unshift,splice,shift
2014/01/29 Javascript
JS实现CheckBox复选框全选、不选或全不选功能
2020/07/28 Javascript
JS产生随机数的用法小结
2016/12/10 Javascript
图片上传之FileAPI与NodeJs
2017/01/24 NodeJs
JavaScript中关于class的调用方法
2017/11/28 Javascript
深入理解与使用keep-alive(配合router-view缓存整个路由页面)
2018/09/25 Javascript
微信小程序之onLaunch与onload异步问题详解
2019/03/28 Javascript
[02:58]献给西雅图的情书_高清
2014/05/29 DOTA
[47:48]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第三局
2016/02/28 DOTA
[01:05]主宰至宝剑心之遗
2017/03/16 DOTA
举例讲解Python面相对象编程中对象的属性与类的方法
2016/01/19 Python
Python实现图片转字符画的示例代码
2017/08/21 Python
全面了解Nginx, WSGI, Flask之间的关系
2018/01/09 Python
Python调用C语言的方法【基于ctypes模块】
2018/01/22 Python
python入门前的第一课 python怎样入门
2018/03/06 Python
TensorFlow实现Softmax回归模型
2018/03/09 Python
Python中list查询及所需时间计算操作示例
2018/06/21 Python
使用Python实现从各个子文件夹中复制指定文件的方法
2018/10/25 Python
python实现简单多人聊天室
2018/12/11 Python
python栈的基本定义与使用方法示例【初始化、赋值、入栈、出栈等】
2019/10/24 Python
Python线程threading模块用法详解
2020/02/26 Python
Python filter()及reduce()函数使用方法解析
2020/09/05 Python
Opencv+Python识别PCB板图片的步骤
2021/01/07 Python
使用Python快速打开一个百万行级别的超大Excel文件的方法
2021/03/02 Python
为什么说Ruby是一种真正的面向对象程序设计语言
2012/10/30 面试题
自我鉴定写作要点
2014/01/17 职场文书
优秀干部获奖感言
2014/01/31 职场文书
2014老师三严三实对照检查材料思想汇报
2014/09/18 职场文书
检查机关党的群众路线个人整改措施
2014/10/04 职场文书
党员查摆剖析材料
2014/10/10 职场文书
公民授权委托书
2014/10/15 职场文书
2016年6月份红领巾广播稿
2015/12/21 职场文书