自製簡易打賞功能

来源:http://www.cnblogs.com/eritpang/archive/2017/09/01/7465484.html
-Advertisement-
Play Games

1、申請開通cnblogs的JS代碼支持 2、將微信收款碼圖片上傳到cnblogs 3、將如下代碼中的http://files.cnblogs.com/files/eritpang/weixin.bmp替換為剛剛上傳的收款碼圖片的鏈接地址,然後將代碼添加到設置->博客側邊欄公告(支持HTML代碼)( ...


1、申請開通cnblogs的JS代碼支持

 

2、將微信收款碼圖片上傳到cnblogs

 

3、將如下代碼中的http://files.cnblogs.com/files/eritpang/weixin.bmp替換為剛剛上傳的收款碼圖片的鏈接地址,然後將代碼添加到設置->博客側邊欄公告(支持HTML代碼)(支持JS代碼)裡面,再點擊“保存”即可。

  1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2 <html xmlns="http://www.w3.org/1999/xhtml">
  3 
  4 <head>
  5     <meta http-equiv="Content-Type" content="text/html;" />
  6     <title>打賞</title>
  7     <style type="text/css">
  8         #dsSidebar {
  9             z-index: 999999;
 10             top: 18%;
 11             width: 200px;
 12             height: 200px;
 13             position: fixed;
 14             right: -200px;
 15         }
 16 
 17         #dsBtn {
 18             z-index: 999999;
 19             width: 30px;
 20             height: 58px;
 21             left: -30px;
 22             top: 80px;
 23             line-height: 28px;
 24             position: absolute;
 25         }
 26 
 27         .dsPanels {
 28             margin: 0px auto;
 29             overflow: hidden;
 30         }
 31 
 32         .dsPanel {
 33             float: left;
 34             margin: 0px 0px;
 35             padding: 12px 0px;
 36             text-align: center;
 37             background: #ffeedd;
 38             border-color: #ffeedd;
 39             border-radius: 8px;
 40         }
 41 
 42         .dsPanel-highlight {
 43             margin-top: 0;
 44             margin-bottom: 0;
 45             padding-left: 10px;
 46             padding-right: 10px;
 47             width: 160px;
 48             border: 8px solid #fd935c;
 49         }
 50 
 51         .dsPanel-button {
 52             display: block;
 53             font-size: 16px;
 54             font-weight: 500;
 55             color: #ffeedd;
 56             text-align: center;
 57             text-decoration: none;
 58             text-shadow: 0 1px rgba(black, .1);
 59             background: #fd935c;
 60             border-bottom: 2px solid #cf7e3b;
 61             border-color: rgba(black, .15);
 62             border-radius: 4px;
 63         }
 64 
 65         .dsPanel-title {
 66             width: 128px;
 67             margin: -15px auto 15px;
 68             padding-bottom: 0px;
 69             line-height: 22px;
 70             font-size: 14px;
 71             font-weight: bold;
 72             color: #ffeedd;
 73             text-shadow: 0 1px rgba(black, .05);
 74             background: #fd935c;
 75             border-radius: 0 0 4px 4px;
 76         }
 77     </style>
 78     <script>
 79         function moveBtn() {
 80             var dsBtn = document.getElementById("dsBtn");
 81             var now = new Date();
 82             var times = now.getTime();
 83             var offsetSize = Math.sin(times / 380.0) * 15 + 45;
 84             var radius = Math.sin(times / 380.0) * 18 + 24;
 85             dsBtn.style.left = -offsetSize + 'px';
 86             dsBtn.style.width = offsetSize + 'px';
 87             dsBtn.style.borderRadius = radius + 'px';
 88             setTimeout(moveBtn, 60);
 89         }
 90 
 91         var dsSidebarTimer = null;
 92         var dsSidebarOffsetRight = -200;
 93         function startMove(dsSidebarTarget, dsSidebarSpeed) {
 94             clearTimeout(dsSidebarTimer);
 95             function doMove() {
 96                 var dsSidebar = document.getElementById('dsSidebar');
 97                 dsSidebarSpeed *= 0.9;
 98                 if (dsSidebarSpeed > -1 && dsSidebarSpeed < 0) {
 99                     dsSidebarSpeed = -1;
100                 } else if (dsSidebarSpeed < 1 && dsSidebarSpeed > 0) {
101                     dsSidebarSpeed = 1;
102                 }
103                 dsSidebarOffsetRight = dsSidebarOffsetRight + dsSidebarSpeed;
104                 if (dsSidebarSpeed > 0 && dsSidebarOffsetRight >= dsSidebarTarget) {
105                     dsSidebarOffsetRight = dsSidebarTarget;
106                     dsSidebar.style.right = dsSidebarOffsetRight + 'px';
107                 } else if (dsSidebarSpeed < 0 && dsSidebarOffsetRight <= dsSidebarTarget) {
108                     dsSidebarOffsetRight = dsSidebarTarget;
109                     dsSidebar.style.right = dsSidebarOffsetRight + 'px';
110                 } else {
111                     dsSidebar.style.right = dsSidebarOffsetRight + 'px';
112                     dsSidebarTimer = setTimeout(doMove, 30);
113                 }
114             }
115             doMove();
116         }
117         document.getElementById('dsImg').onload = function () {
118             var dsSidebar = document.getElementById('dsSidebar');
119             dsSidebar.onmouseover = function () {
120                 startMove(0, 24);
121             }
122             dsSidebar.onmouseout = function () {
123                 startMove(-200, -24);
124             }
125             moveBtn();
126         }
127     </script>
128 </head>
129 
130 <body>
131     <div id="dsSidebar">
132         <div class="dsPanels">
133             <div class="dsPanel dsPanel-highlight">
134                 <p class="dsPanel-title">喜歡請用微信打賞</p>
135                 <img id='dsImg' src="http://files.cnblogs.com/files/eritpang/weixin.bmp" alt="" width="160" height="160" />
136             </div>
137         </div>
138         <span class="dsPanel-button" id='dsBtn'><b><br/></b></span>
139     </div>
140 </body>
141 
142 </html>
View Code

 

4、效果如下。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • gdom框架是我開發的一款dom和字元串處理框架,目前版本是1.0.0. 使用方法跟jquery是差不多的, 會用jquery就會用gdom,目前 1.0.0版本的選擇器完全支持CSS3選擇器.沒有做IE的低版本相容。 gdom下載地址:https://github.com/ghostwu/gdom ...
  • 1.打開工具--插件開發--新建代碼片段 會出現下圖: 2.在<![CDATA[和]]>內寫下你要的代碼片段,註意的是代碼片段要靠最左邊。 3.設置快捷鍵,把下麵tabTrigger標簽的註釋打開,中間的h就是你的快捷鍵。 4.Ctrl+s保存。名字隨便起,但是尾碼名必須是.sublime-snip ...
  • 序 嚴格的來說,這是我第一個完全投入的開源項目,它的出現是為了統一移動H5中的下拉刷新,想通過一套框架,多主題拓展方式,適應於任意需求下的任意下拉刷新場景。 另外,這個項目作為獨立項目存在,希望能有更多的人參與進來! " " "【minirefresh】優雅的H5下拉刷新。零依賴,高性能,多主題,易 ...
  • 常用命令 git速度快,分散式, 回到過去,未來,版本 使用git會在當前目錄下,產生一個.git文件,記錄 多端共用 團隊協作 衝突需要手動解決 svn和git對比 svn叫集中式,集中存放,有一個中央伺服器,如果中央伺服器報廢,所有的文件將癱瘓 每個文件夾裡面都有.svn文件,速度慢 git叫分 ...
  • vue.js環境配置以及實例運行簡明教程 聲明:本文檔編寫參考如下兩篇博客,是對它們的修改與補充,歡迎點擊鏈接查看原文: 原文1:vue.js在windows本地下搭建環境和創建項目 原文2:Vue.js開發環境搭建 原文1:vue.js在windows本地下搭建環境和創建項目 原文2:Vue.js ...
  • 函數節流與函數防抖 最近由於處於互聯網大廠的秋招季節,因此這些天都在看前端性能優化和演算法方面的知識。在性能優化方面,看了網上的一些文章,同時看完了《高性能網站建設指南》和《高性能JavaScript》兩本書,頗有收穫,可以參看這篇文章,主要是一些前端性能優化方面的總結。傳送門: "前端性能優化最佳實 ...
  • js獲取url的參數和值的N種有效方法 ...
  • /**數據驗證完整性**/$.fn.Validform = function () { var Validatemsg = ""; var Validateflag = true; $(this).find("[isvalid=yes]").each(function () { var checke ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...