Py学习  »  Jquery

如何在JQuery中等待

Jkank • 4 年前 • 355 次点击  

我想让jQuery在它减速之前等待它向上滑动

我试过用setTimeout,但没用

$(document).ready(function() {
    const myForm = $('#MyForm');
    const ul = $('items')
    const userList = $('#users');
    const AnswerInput = $('#Answer1').val();
    const msg = $('.msg');

    myForm.submit(function(e){
        e.preventDefault()
        if(AnswerInput === ''){
            msg.slideDown(2000)
            msg.addClass('error')
            msg.text('Please Enter an Answer')
            setTimeout(()=> msg.slideUp(), 2000)
        }

    })
});

这是HTML

<div class="container">
    <div class="card">
    <div class="msg"></div>
        <form id="MyForm">
            <label for="answer"> Factorise x<sup>2</sup> + 5x + 6:</label>
            <input type="text" id="Answer1" class="inputText">
            <br><br>
            <input type="submit" class="btn" id="clickBtn">

        </form>
    </div>
    <ul id="users">
        <li>ghv</li>
        <li>jhbh</li>
    </ul>
</div>

没有错我只想知道怎么做

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/49323
 
355 次点击  
文章 [ 2 ]  |  最新文章 4 年前
Neel
Reply   •   1 楼
Neel    4 年前

替换最后一行

setTimeout(()=> msg.slideUp(), 2000)

具有

msg.delay(5000).slideUp();

将5000替换为您所需的任何时间段(以毫秒为单位)

Matt Stannett
Reply   •   2 楼
Matt Stannett    4 年前

也许是 delay 功能就是你追求的。

msg
    .slideDown(2000)
    .delay(1000)
    .addClass('error')
    .text('Please Enter an Answer');

你也应该调查一下 chaining .