我有一些属性为<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');
}
答案 0 :(得分:2)
要执行此操作,您需要使用标题中的setTimeout
。
setTimeout(function(){
// your code
}, yourInterval);
这是编写setTimeout的方法。
答案 1 :(得分:0)
var self = this
setTimeout(function() {
$(self).removeAttr('style'), timeinmilliseconds)
}