1

我正在尝试创建一个使用 jQuery 的 CSS 函数的弹出窗口。代码如下:

function Show_Popup(action, userid) {
 $('#content').css("opacity","0.7");
 $('#window').fadeIn('fast');
 $('#window').css("opacity","1.0");}

这里#window 在#content 中。因此,当它“淡入”时,它的不透明度也设置为0.7,我试图通过第三行代码覆盖它。但它不起作用。有什么办法吗?谢谢。

4

4 回答 4

1

不幸的是,没有办法解决这个问题。至少,没有整洁的方式。

看,#window被设置为#content70% 的 100%。

解决这个问题的唯一方法是#window不要在里面#content,而是在之后/在上面。

于 2012-04-07T01:03:42.210 回答
1

采用

 $('#content').css("opacity","0.7");
 $('#window').fadeIn('slow', function() {
      $('#window').css("opacity","1.0");}
  });

如果这就是您要寻找的,您也可能需要考虑 $.animate() 。

记住: CSS-Opacity 是链式的。因此,即使#window 的不透明度为 100%,它也只是其父级的 70% 不透明度的 100%。请参阅http://www.impressivewebs.com/css-opacity-that-doesnt-affect-child-elements /一个骇人听闻的解决方法

于 2012-04-07T01:03:50.027 回答
1

只是有一个更好/不同的想法。

如果可以,请设置position: absolute#window. 确保它不会导致流程出现问题,但是如果您这样做,则opacity不再链接。

于 2012-04-07T01:14:06.870 回答
0

使用 fadeTo()

$('#window').fadeTo('fast', 1.0);
于 2012-04-07T01:16:29.397 回答