如何将 jquery 中点击的 div 置于最前面?

how can bring to front clicked div in jquery?

我想把点击的div放在前面,怎么办?

这里我在HTML中添加了一些div:

<div class="div1">A</div>
<div class="div2">B</div>
<div class="div3">C</div>

我在这里用 CSS 代码设置 div 的大小:

div {
    width: 100px;
    height: 100px;
    background-color: #666;
    border-color: #333;
    border-style: solid;
    position: absolute;
    line-height: 100px;
    text-align:center;
    font-size:50px;
}
.div1 {
    left: 91px;
    top: 66px;
}
.div2 {
    left: 132px;
    top: 152px;
}
.div3 {
    left: 171px;
    top: 90px;
}

同样在这里,我想在单击 div 时更改活动 div,它应该在单击时显示在前面,如何使用 Jquery:

$(".div1").click(function() {
    // make div 1 front of the screen
})
$(".div2").click(function() {
    // make div 2 front of the screen
})
$(".div3").click(function() {
    // make div 3 front of the screen
})

创建一个名为 front 的 class 并将其样式设置为:

.front{ z-index:100; }

然后 add/remove 这个 class 根据需要:

$('.front-on-click').click(function(){
    $('.front').removeClass('front');
    $(this).addClass('front');
});

JSFiddle demo

$(".div1,.div2,.div3").click(function(){
    //assign all divs `z-index` = 90 including clicked one
    $(".div1,.div2,.div3").css("z-index","90");

    //assign `z-index` = 100 to clicked one
    $(this).css("z-index","100"); 
});

对 div 使用 z-index 并在单击时更改其他人的 z-index 值

片段:

$(".div1").click(function() {
    $('div[class^="div"]').css('z-index', '0');
    $(this).css('z-index', '10');
})
$(".div2").click(function() {
    // make div 2 front of the screen
  $('div[class^="div"]').css('z-index', '0');
  $(this).css('z-index', '10');
})
$(".div3").click(function() {
    // make div 3 front of the screen
  $('div[class^="div"]').css('z-index', '0');
  $(this).css('z-index', '10');
})
div {
    width: 100px;
    height: 100px;
    background-color: #666;
    border-color: #333;
    border-style: solid;
    position: absolute;
    line-height: 100px;
    text-align:center;
    font-size:50px;
}
.div1 {
    left: 91px;
    top: 66px;
}
.div2 {
    left: 132px;
    top: 152px;
}
.div3 {
    left: 171px;
    top: 90px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="div1">A</div>
<div class="div2">B</div>
<div class="div3">C</div>

为三个 div 中的每一个指定一个 z-index 属性,例如 1,在您的 CSS 中。然后在您点击后,增加被点击的 div 的 z-index

$('div[class^="div"]').click(function(){
    $(this).css('z-index', 2);
    //reset other sibling div's z-index to default value (i.e. 1)
    $(this).siblings('div').css('z-index', 1);
});

请注意,这里我假设你们三个 div 都在 同一个容器中 div。

您可以使用 z-index 定位元素。

$('.div1, .div2, .div3').click(function(){   
    $('div').css('zIndex',2);
    $(this).css('zIndex',200);    
});

如果能在这里限制所有div的zIndex重置就更好了。为此,为 div 添加一个单独的 class。

.focusable{
    position:absolute;
}

<div class="div1 focusable">A</div> 
<div class="div2 focusable">B</div>
<div class="div3 focusable">C</div>

$('.focusable').click(function(){   
    $('.focusable').css('zIndex',2);
    $(this).css('zIndex',200);    
});

jsfiddle 中的示例 https://jsfiddle.net/L87ar9ax/ .