Home  >  Article  >  Web Front-end  >  jquery implements countdown click

jquery implements countdown click

WBOY
WBOYOriginal
2023-05-23 18:13:371012browse

With the popularity of mobile Internet, front-end development is becoming more and more important. jQuery is a very common JS library. It provides many practical methods and functions to facilitate the development work of JS writers. In this article, we will explore how to use jQuery to implement a countdown click effect and the principles of its implementation.

1. To achieve the effect

After clicking a button, the countdown begins, and the button cannot be clicked again during the countdown; when the countdown ends, the button becomes available again and can be Click again.

2. Implementation Principle

To achieve the above effect, you need to use jQuery's event listening and timer methods.

First of all, we need to use click event monitoring to listen for the click event of the button. Once the button is clicked, we execute a timer and the countdown begins. In the timer, we use the text method to modify the text content of the button, which decreases once every second until the countdown ends.

During our countdown process, we need to ensure that this button cannot be clicked again, otherwise it will cause timing confusion. We can disable the button through the prop method, which can set the attribute value of the element, such as disabling the button.

When the countdown is over, we can also remove the disabled attribute through the prop method, so that the button becomes available again and can be clicked again.

3. Implementation code

The following is the specific implementation code:

<button type="button" class="btn btn-primary" id="btn-countdown">点击开始倒计时</button>
$(function() {
    var $btn = $('#btn-countdown');
    var count = 5;
    var timer = null;
    $btn.on('click', function() {
        if(!timer) {
            timer = setInterval(function() {
                count--;
                $btn.text(count + '秒后重新发送').prop('disabled', true);
                if(count == 0) {
                    clearInterval(timer);
                    $btn.text('点击重新发送').prop('disabled', false);
                    timer = null;
                    count = 5;
                }
            }, 1000);
        }
    })
})

In the above code, the button element is first obtained, and the initial countdown time count is set to 5. We use $btn.on to add a listening event, and the callback function will be executed when the button is clicked.

In the callback function, we judge that if the timer timer is null, it means that it is not currently counting down. We will start executing a timer once every second, decrement the countdown and disable the button at the same time. When the countdown ends, the timer will automatically stop, and we will change the button text to "Click to resend" and unlock the button.

4. Summary

In the era of mobile Internet, front-end development has received more and more attention. Using jQuery can greatly improve our development efficiency, allowing us to achieve DOM operations and interactive effects more conveniently and quickly. The countdown click effect is an interactive effect commonly used in web development. It is very practical. When you need to achieve similar effects, you can use the code in this article to achieve it.

The above is the detailed content of jquery implements countdown click. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn