Jquery在P文本交换中添加延迟

时间:2016-11-08 10:06:20

标签: jquery

$(document).ready(function() {
    $("p").on("click", function() {
        var el = $(this);
        if (el.text() == el.data("text-swap")) {
            el.text(el.data("text-original"));
        } else {
            el.data("text-original", el.text());
            el.text(el.data("text-swap"));
        }
    });
});

是否可以在此jQuery代码中添加延迟?

3 个答案:

答案 0 :(得分:2)

使用setTimeout

  

设置一个计时器,在计时器到期后执行一次函数或指定的代码。

$(document).ready(function() {
    $("p").on("click", function() {
        var el = $(this);
        setTimeout(function() {
            if (el.text() == el.data("text-swap")) {
                el.text(el.data("text-original"));
            } else {
                el.data("text-original", el.text());
                el.text(el.data("text-swap"));
            }
        }, 1000);
    });
});

答案 1 :(得分:1)

$(document).ready(function(){
var TIMEOUT = 1000 // 1 second
$("p").on("click", function() {
    var el = $(this);
    setTimeout( function() {
        if (el.text() == el.data("text-swap")) {
            el.text(el.data("text-original"));
        } else {
            el.data("text-original", el.text());
            el.text(el.data("text-swap"));
        }
    }, TIMEOUT);
});
});

答案 2 :(得分:0)

$(document).ready(function(){
        $("p").on("click", function() {
            var el = $(this);
            setTimeout(loadfn,1000);
        });
    });
    function loadfn() {
        if (el.text() == el.data("text-swap")) {
            el.text(el.data("text-original"));
        } else {
            el.data("text-original", el.text());
            el.text(el.data("text-swap"));
        }
    }