可爱的验证码_java
2015-07-14 09:35
330 查看
修改的内容:jquery.capcha.js
自己封装的captcha jquery.captcha.extend.js
前台的调用
php版本的具体参考:http://leo108.com/
;(function( $ ){ $.fn.captcha = function(options){ var myoptions=new Array("铅笔", "剪刀", "闹钟", "红心", "笔记本"); var defaults = { borderColor: "", captchaDir: "captcha", url: "captcha/captcha.php", formId: "myForm", text: "Verify that you are a human,<br />drag <span>scissors</span> into the circle.", items: Array("pencil", "scissors", "clock", "heart", "note") }; var options = $.extend(defaults, options); $(this).html("<b class='ajax-fc-rtop'>" + "<b class='ajax-fc-r1'></b> " + "<b class='ajax-fc-r2'></b> " + "<b class='ajax-fc-r3'></b> " + "<b class='ajax-fc-r4'></b>" + "</b>" + "<img class='ajax-fc-border' id='ajax-fc-left' src='" + options.captchaDir + "/imgs/border-left.png' />" + "<img class='ajax-fc-border' id='ajax-fc-right' src='" + options.captchaDir + "/imgs/border-right.png' />" + "<div id='ajax-fc-content'>" + "<div id='ajax-fc-left'>" + "<p id='ajax-fc-task'>" + options.text + "</p>" + "<ul id='ajax-fc-task'>" + "<li class='ajax-fc-0'><img src='" + options.captchaDir + "/imgs/item-none.png' alt='' /></li>" + "<li class='ajax-fc-1'><img src='" + options.captchaDir + "/imgs/item-none.png' alt='' /></li>" + "<li class='ajax-fc-2'><img src='" + options.captchaDir + "/imgs/item-none.png' alt='' /></li>" + "<li class='ajax-fc-3'><img src='" + options.captchaDir + "/imgs/item-none.png' alt='' /></li>" + "<li class='ajax-fc-4'><img src='" + options.captchaDir + "/imgs/item-none.png' alt='' /></li>" + "</ul>" + "</div>" + "<div id='ajax-fc-right'>" + "<a target='_blank' href='http://www.webdesignbeach.com'><img id='ajax-fc-backlink' src='" + options.captchaDir + "/imgs/wdb.png' alt='Web Design Beach' /></a>" + "<p id='ajax-fc-circle'></p>" + "</div>" + "</div>" + "<div id='ajax-fc-corner-spacer'></div>" + "<b class='ajax-fc-rbottom'>" + "<b class='ajax-fc-r4'></b> " + "<b class='ajax-fc-r3'></b> " + "<b class='ajax-fc-r2'></b> " + "<b class='ajax-fc-r1'></b>" + "</b>"); var rand = $.ajax({ url: options.url,async: false }).responseText; var pic = randomNumber(); $(".ajax-fc-" + rand).html( "<img src=\"" + options.captchaDir +"/imgs/item-" + options.items[pic] + ".png\" alt=\"\" />"); $("p#ajax-fc-task span").html(myoptions[pic]); $(".ajax-fc-" + rand).addClass('ajax-fc-highlighted'); $(".ajax-fc-" + rand).draggable({ containment: '#ajax-fc-content' }); var used = Array(); for(var i=0;i<5;i++){ if(i != rand && i != pic) { $(".ajax-fc-" +i).html( "<img src=\"" + options.captchaDir +"/imgs/item-" + options.items[i] + ".png\" alt=\"\" />"); used[i] = options.items[i]; } } $(".ajax-fc-container, .ajax-fc-rtop *, .ajax-fc-rbottom *").css("background-color", options.borderColor); $("#ajax-fc-circle").droppable({ drop: function(event, ui) { $(".ajax-fc-" + rand).draggable("disable"); $("#" + options.formId).append("<input type=\"hidden\" style=\"display: none;\" name=\"captcha\" id=\"captchacode\" value=\"" + rand + "\">"); }, tolerance: 'touch' }); }; })( jQuery ); function randomNumber() { var chars = "01234"; chars += "."; var size = 1; var i = 1; var ret = ""; while ( i <= size ) { $max = chars.length-1; $num = Math.floor(Math.random()*$max); $temp = chars.substr($num, 1); ret += $temp; i++; } return ret; }
自己封装的captcha jquery.captcha.extend.js
(function($){ $.fn.mycaptcha = function(options){ var _this=$(this); var defaults = { borderColor: "", //验证码存放的目录 captchaDir: "captcha", //获取随机验证码的路径 url: "/JQueryUpload/RandomCode.do", formId: "myForm", text: "<font size='2'>验证你不是机器人,<br />请拖动 <span>scissors</span> 进入圆圈内.</font>", items: Array("pencil", "scissors", "clock", "heart", "note") }; var options = $.extend(defaults, options); $("."+_this.attr('class')).captcha(options); }; })(jQuery);
前台的调用
<%@ page language="java" pageEncoding="gbk"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>upload index</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <link rel="stylesheet" type="text/css" href="captcha.css"></link> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="jquery-ui.min.js"></script> <script type="text/javascript" src="jquery.captcha.js"></script> <script type="text/javascript" src="jquery.captcha.extend.js"></script> </head> <script type="text/javascript"> $(function() { $(".ajax-fc-container").mycaptcha({formId: "myForm"}); }); function login() { var code = document.getElementById("captchacode"); if(code==null) { alert("请拖动提示中给的元素!"); return false; } document.myForm.submit(); } </script> <body> <form action="/JQueryUpload/Login.do" id="myForm" name="myForm" method="post"> <div class="ajax-fc-container"></div> <input type="button" value="提交" onclick="login();"/> </form> </body> </html>
php版本的具体参考:http://leo108.com/
相关文章推荐
- Dynamic Web Module 3.1 requires Java 1.7 or newer.
- java web 开发系列之jsp知识大纲
- 匹配文本中的网址java正则表达式
- java学习
- java树形菜单
- Java IO最详解
- hadoop学习之基础Java GC详解
- hadoop学习之基础Java GC详解
- 一致性哈希算法与Java实现
- String参数是传值还是传递引用的测试
- Java基础知识一
- 最重要的 Java EE 最佳实践
- java web 开发系列之jsp知识大纲
- 五年java人的一点感悟
- Java路径操作详解
- 在java ADT中打开电脑上的其他project
- Java泛型详解
- JAVA之文件操作(I/O)
- leetcode Power of Two java--代码小白开始苟延残喘第五天的刷题
- jsp与javaBean的使用