login.html 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. {extend name="layout/base" /}
  2. {block name="title"}<title>用户登录_麻花网络</title>{/block}
  3. {block name="header"}
  4. <link rel="stylesheet" href="__STATIC__/css/mobile/form.css">
  5. <script src="https://ssl.captcha.qq.com/TCaptcha.js"></script>
  6. {/block}
  7. {block name="content"}
  8. <!-- header start -->
  9. <header>
  10. <a href="javascript:history.back(-1)"><img src="__STATIC__/images/mobile/icon/left.png" class="back"></a>
  11. <h1>用户登录</h1>
  12. </header>
  13. <!-- header end -->
  14. <div class="login">
  15. <img src="__STATIC__/images/mobile/logo.png" class="logo">
  16. <form class="form">
  17. <div class="warp-input">
  18. <img src="__STATIC__/images/mobile/icon/user.png">
  19. <input type="text" placeholder="请输入用户名" id="username" name="username" autocomplete="off">
  20. <img src="__STATIC__/images/mobile/icon/close-01.png" class="cancel">
  21. <span></span>
  22. </div>
  23. <div class="warp-input">
  24. <img src="__STATIC__/images/mobile/icon/password.png">
  25. <input type="password" placeholder="请输入密码" id="password" name="password" autocomplete="off">
  26. <img src="__STATIC__/images/mobile/icon/close-01.png" class="cancel pw">
  27. <span></span>
  28. </div>
  29. <input type="button" value="登录" class="submit" />
  30. <input type="button" id="TencentCaptcha" data-appid="{$appid}" data-cbfn="callback" style="display: none;" />
  31. </form>
  32. <div class="login_bottom">
  33. <a href="{:getMobileForgetPwdUrl(1)}">忘记密码?</a>
  34. <a href="{:getMobileEncodeUrl('register')}">立即注册></a>
  35. </div>
  36. </div>
  37. {include file="layout/footer" /}
  38. {/block}
  39. {block name="detail_js"}
  40. <script>
  41. $("#username,#password").focus(function() {
  42. $(this).next().next().animate({
  43. width: "100%"
  44. }, 500)
  45. });
  46. $("#username,#password").blur(function() {
  47. $(this).next().next().animate({
  48. width: "0"
  49. }, 500)
  50. });
  51. $("#username,#password").keyup(function() {
  52. var username = $("#username").val();
  53. var password = $("#password").val();
  54. var text = $(this).val();
  55. if (text != "") {
  56. $(this).next().show();
  57. } else {
  58. $(this).next().hide();
  59. }
  60. if (username != "" && password != "") {
  61. $(".submit").addClass("clickable");
  62. } else {
  63. $(".submit").removeClass("clickable");
  64. }
  65. })
  66. $(".cancel").click(function() {
  67. $(this).prev().val("");
  68. $(this).hide();
  69. $(".submit").removeClass("clickable");
  70. })
  71. // 粘贴事件监控
  72. $.fn.pasteEvents = function( delay ) {
  73. if (delay == undefined) delay = 10;
  74. return $(this).each(function() {
  75. var $el = $(this);
  76. $el.on("paste", function() {
  77. $el.trigger("prepaste");
  78. setTimeout(function() { $el.trigger("postpaste"); }, delay);
  79. });
  80. });
  81. };
  82. // 使用
  83. $("#username,#password").on("postpaste", function() {
  84. var username = $("#username").val();
  85. var password = $("#password").val();
  86. var text = $(this).val();
  87. if (text != "") {
  88. $(this).next().show();
  89. } else {
  90. $(this).next().hide();
  91. }
  92. if (username != "" && password != "") {
  93. $(".submit").addClass("clickable");
  94. } else {
  95. $(".submit").removeClass("clickable");
  96. }
  97. }).pasteEvents();
  98. $(".submit").click(function() {
  99. if($(this).hasClass("clickable")){
  100. $("#TencentCaptcha").trigger("click");
  101. }
  102. })
  103. //拼图验证
  104. var ticket = '';
  105. var randstr = '';
  106. window.callback = function(res){
  107. if(res.ret === 0){
  108. var username = $("#username").val();
  109. var password = $("#password").val();
  110. var ticket = res.ticket;
  111. var randstr = res.randstr;
  112. $.ajax({
  113. type: 'POST',
  114. url: '{:url("Mobile/member/login")}',
  115. data: {username:username,password:password,ticket:ticket,randstr:randstr},
  116. success: function(json) {
  117. // console.log(json);
  118. if(json.code == 1) {
  119. window.location.href = json.url;
  120. }else{
  121. $.toast( json.msg, "text");
  122. $("#password").val("");
  123. $(".pw").hide();
  124. $(".submit").removeClass("clickable");
  125. }
  126. },
  127. dataType: 'json',
  128. error: function () {
  129. $.alert("网络错误,请刷新页面重试");
  130. }
  131. });
  132. }
  133. }
  134. </script>
  135. {/block}