Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我无法使用jquery设置div的z索引?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 为什么我无法使用jquery设置div的z索引?

Javascript 为什么我无法使用jquery设置div的z索引?,javascript,jquery,html,Javascript,Jquery,Html,我已经创建了一个示例 这里有三个div。现在,我想做的是:点击任何一个div,它应该出现在其他div的顶部,然后淡入淡出,然后回到原来的位置。这就是我正在使用的: $(".box").click( function () { var zindex = $(this).css('z-index'); /* this too is not working $(this).css('z-index',14); $(this).fadeTo ( 'slow',

我已经创建了一个示例
这里有三个div。现在,我想做的是:点击任何一个div,它应该出现在其他div的顶部,然后淡入淡出,然后回到原来的位置。这就是我正在使用的:

$(".box").click( function () {
    var zindex = $(this).css('z-index');     
  /* this too is not working
    $(this).css('z-index',14);  
    $(this).fadeTo ( 'slow', 0.5 ).fadeTo('slow', 1 )
    $(this).css('z-index',zindex);
  */

    $(this).css('z-index',14).fadeTo  ( 'slow', 0.5 ).fadeTo('slow', 1 ).css('z-index',zindex);

} );

提供
$(this).css('z-index',14)
仅此一项就能够使div超越其他div

将代码更改为:

$(".box").click( function () {
   var zindex = $(this).css('z-index');     

   $(this).css('z-index',14).fadeTo  ( 'slow', 0.5 ).fadeTo('slow', 1, function(){
       $(this).css('z-index',zindex);
   });
});
您不能在
fadeTo()
之后链接
.css()
方法,因为那些
fx
函数异步运行,因此,
.css()
立即执行

这就是为什么所有的
fx
方法都会提供在完成时触发的回调

请参见操作中的内容:

使用回调

$(this).css('z-index',14)
    .fadeTo('slow', 0.5 )
    .fadeTo('slow', 1, function(){
        $(this).css('z-index',zindex);
    });
在中,它将在动画结束时运行


.

设置背景:“白色”;我要澄清的是,你正在设置项目的z指数,只是你将其设置为14,然后几乎立即恢复到原来的水平。jAndy所做的是使用
fadeTo()
callback参数来确保在将z索引设置回原始值之前动画已经完成。