Javascript如何setTimeout

时间:2016-01-08 23:31:38

标签: javascript jquery settimeout

我有一些属性为<div id="10" piki="99" class='casella'></div>的元素。它们的背景只是一种颜色(在CSS中指定)。在点击事件中,他们的背景被图像替换;

$(this).css({
    'background-image' : 'url("' + images[x] + '")',
    'background-size' : 'contain'
});

之后,当发生不同的事件(另一次点击)时,我希望背景变成一种颜色,就像它在开始时一样。这是通过$(this).removeAttr('style');完成的。事实是,我希望图像在被背景颜色替换之前显示一段时间。

缩短版JS文件:

window.onload = function() {
for(i=0; i<20; i++)
{
    //create 20 casellas and add them a class.
    $(jumbotron).append("<div id="+i+" piki="+r+ "    class='casella'>      </div>");///////////////////////////////////////////////////////////////////////////////////////////    follows happening when clicks are applied////////////////////////////////////////////////////////////////////

    $('.casella').click( function() {
        if (clickCount%2 == 0) {
            $(this).css({
            'background-image' : 'url("' + images[x] + '")',
            'background-size' : 'contain'
        });     
    }
    ..............................
    else
    {
            alert('trying to make them disappear');
            $(this).removeAttr('style'); 
    }

2 个答案:

答案 0 :(得分:2)

要执行此操作,您需要使用标题中的setTimeout

setTimeout(function(){
    // your code
}, yourInterval);

这是编写setTimeout的方法。

答案 1 :(得分:0)

var self = this    
setTimeout(function() {
    $(self).removeAttr('style'), timeinmilliseconds)
}