JQuery实现注册按钮计时

在网站中常见到注册时会出现“请认真阅读此协议...秒后可注册”,当时间过去后此按钮消失,取而代之的是“注册”按钮。此次的效果使用JQuery,但是Dom是JQuery的基础,希望在写此程序时可以回顾下使用Dom的效果。下面请看代码:

 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 <head>
 4     <title></title>
 5 
 6     <script src="js/jquery-1.4.2.js" type="text/javascript"></script>
 7     <script type="text/javascript">
 8         var i = 10;
 9         function timers() {
10             $(function() {
11                 if (i >= 0) {
12                     $("#timer").val("请认真阅读此协议" + i + "秒后可注册").attr("disabled", "disalbed");
13                     $("#btn").attr("disabled", "disabled");
14                     i--;
15                 }
16                 else {
17                     $("#timer").css("display", "none");
18                     $("#btn").attr("disabled", "");
19                     clearInterval(timer);
20                 }
21 
22             });
23 
24         }
25         var timer = setInterval("timers()", 1000);
26     
27     </script>
28 </head>
29 <body>
30 <input type="button" id="timer" />
31 <input type="button" id="btn" value="注册"  disabled="disabled"/>
32 </body>
33 </html>

     在此代码中,中间过程使用的是JQuery,但是使用的还是使用最基础的javascript语法。写出此代码的思路如下:
     1.计时。在一个按钮中的value会有一个计时的参数,此参数必须每隔一秒就需要变化一次。所以可以联想到使用setInterval或者是timeOut函数。所以在程序中先定义了一个var i=10;作为时间。

    2.实现按钮的不可用性。此时必须判断时间i是否大于0,如果大于0则此时的按钮都为不可用,并且要控制时间递减所以使用i--。其中的   $("#timer").val("请认真阅读此协议" + i + "秒后可注册").attr("disabled", "disalbed");    $("#btn").attr("disabled", "disabled");分别获取到id=“timer”和id=“btn”的控件并将其可用性变为不可用。

    3.实现隐藏以及可用性。当时间为0时,需要将id=“timer”的控件隐藏,所以使用函数css("disaplay","none");将id=“btn”的控件变为可用,所以设置控件的属性,使用attr("disabled","")并且将setInterval清除。

   

  

 

 

posted @ 2012-06-07 09:24  孙进  阅读(929)  评论(0编辑  收藏  举报