當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
H5+JS+相对单位rem实现第三方支付页(输入金额+模拟数字键盘+自适应布局+大写金额)
生活随笔
收集整理的這篇文章主要介紹了
H5+JS+相对单位rem实现第三方支付页(输入金额+模拟数字键盘+自适应布局+大写金额)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
最近做了個第三方支付頁,H5+JS+相對單位rem實現(xiàn)(輸入金額+模擬數(shù)字鍵盤+自適應布局+大寫金額)。
源碼github地址:https://github.com/XieTongXue/how-to/tree/master/pay-h5
限于篇幅,以下只給出部分關(guān)鍵代碼(需要完整源碼請到以上git地址下載):
①鍵盤點擊處理:
?
<script type="text/javascript">$(function(){$(".payinfo").slideDown();var $paymoney = $("#paymoney");// 大寫金額var upperCaseMoney = $('.upper-case span');$("#paymoney").focus(function(){$(".payinfo").slideDown();document.activeElement.blur();});$(".paynum").each(function(){$(this).click(function(){if(($paymoney.text()).indexOf(".") != -1 && ($paymoney.text()).substring(($paymoney.text()).indexOf(".") + 1, ($paymoney.text()).length).length == 2){return;}if($.trim($paymoney.text()) == "0"){return;}if (parseInt($paymoney.text()) > 10000 && $paymoney.text().indexOf(".") == -1) {return;}$('.pay').removeClass('pay-disabled').find('a').attr('href','pay-result.html');$paymoney.text($paymoney.text() + $(this).text());upperCaseMoney.text(digitUppercase($paymoney.text()));});});$("#pay-return").click(function(){$paymoney.text(($paymoney.text()).substring(0, ($paymoney.text()).length - 1));upperCaseMoney.text(digitUppercase($paymoney.text()));if (!$paymoney.text()) {upperCaseMoney.text('');$('.pay').addClass('pay-disabled').find('a').attr('href', 'javascript:return false;');}});$("#pay-zero").click(function(){if(($paymoney.text()).indexOf(".") != -1 && ($paymoney.text()).substring(($paymoney.text()).indexOf(".") + 1, ($paymoney.text()).length).length == 2){return;}if($.trim($paymoney.text()) == "0"){return;}if (parseInt($paymoney.text()) > 10000 && $paymoney.text().indexOf(".") == -1) {return;}$paymoney.text($paymoney.text() + $(this).text());});$("#pay-float").click(function(){if($.trim($paymoney.text()) == ""){return;}if(($paymoney.text()).indexOf(".") != -1){return;}if(($paymoney.text()).indexOf(".") != -1){return;}$paymoney.text($paymoney.text() + $(this).text());});if (!$paymoney.text()) {$('.pay').addClass('pay-disabled');}}); </script>
②:金額轉(zhuǎn)大寫處理:
?
?
<script>var digitUppercase = function(n) {var fraction = ['角', '分'];var digit = ['零', '壹', '貳', '叁', '肆','伍', '陸', '柒', '捌', '玖'];var unit = [['元', '萬', '億'],['', '拾', '佰', '仟']];var head = n < 0 ? '欠' : '';n = Math.abs(n);var s = '';for (var i = 0; i < fraction.length; i++) {s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');}s = s || '整';n = Math.floor(n);for (var i = 0; i < unit[0].length && n > 0; i++) {var p = '';for (var j = 0; j < unit[1].length && n > 0; j++) {p = digit[n % 10] + unit[1][j] + p;n = Math.floor(n / 10);}s = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + s;}return head + s.replace(/(零.)*零元/, '元').replace(/(零.)+/g, '零').replace(/^整$/, '零元整');}; </script>
③:自適應布局(css也要相應設置,具體可參考本人另外一篇博客:JavaScript結(jié)合相對單位rem實現(xiàn)自適應布局)
兼容各種個手機屏幕,運行結(jié)果:
?
總結(jié)
以上是生活随笔為你收集整理的H5+JS+相对单位rem实现第三方支付页(输入金额+模拟数字键盘+自适应布局+大写金额)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 天玑8200ultra和骁龙7gen2哪
- 下一篇: office2016永久激活密钥从哪里找