首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >覆盖CSS :使用jquery显示none属性

问覆盖CSS :使用jquery显示none属性
EN

Stack Overflow用户
提问于 2012-09-11 15:34:51
回答 3查看 412关注 0票数 0

对于在css中定义为display:none的元素,我试图运行一个函数,该函数试图使用.show()显示元素,代码如下:

CSS

代码语言:javascript
复制
.element {
  position: absolute;
  display: none;
  left: 0;
  top: 0;
}

代码语言:javascript
复制
<div class="element">Some content here</div>
<div class="element">Some content here</div>

jQuery

代码语言:javascript
复制
var c = $('.element');

c.each(function () {
  c.css({
    'left': dleft + 'px'
  });

  c.css({
    'top': dtop + 'px'
  });

  c.setTimeout(function () {
    c.show(1000);
  }, sduration);

所有的变量都被填充了--我已经通过通知所有变量来检查它们,并给出了它们的默认值,但是不知怎么的,元素在超时之后没有显示出来。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-09-11 15:42:27

在您编写的代码中似乎有两个问题。您尚未关闭.each()循环。setTimeout也是一个全局函数。。。查一下这个

代码语言:javascript
复制
    var dleft = 40;
var dtop = 40;
var sduration = 1000;
var c = $('.element');

c.each(function() {
    c.css({
        'left': dleft + 'px',
        'top': dtop + 'px'
    });
});
setTimeout(function() {
    c.show(1000);
}, sduration);​

检查这个小提琴

票数 0
EN

Stack Overflow用户

发布于 2012-09-11 15:39:00

setTimeout是一个全局函数。

代码语言:javascript
复制
var c = $('.element');

c.each(function () {
  c.css({ 'left': dleft + 'px', 'top': dtop + 'px' });

  setTimeout(function () {
    c.show(1000);
  }, sduration);
});

演示:http://jsfiddle.net/S7nw3/

票数 0
EN

Stack Overflow用户

发布于 2012-09-11 15:55:07

如果在显示元素时需要延迟,也可以使用jQuery .delay()函数。

代码语言:javascript
复制
c.each(function() {
    c.css({
        'left': dleft + 'px',
        'top': dtop + 'px'
    });
});

c.delay(1000).show();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12373272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档