我正在尝试使用jQuery的toggleClass()单击div并将该div扩展到100%的高度和宽度(换句话说,全屏显示)。我以为这很容易,但是由于某种原因,我很挣扎。今天早上一定很累...以下代码切换为100%的高度和宽度,但不会切换回原始大小。

的HTML

<div class="s3div1" id="s3div1"></div>


JS

$("div#s3div1").dblclick(function (event) {
    $(".s3div1").toggleClass("overlay").toggleClass("s3div1");
    });


的CSS

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width:100%;
    height:100%;
    z-index:1000;
}

.s3div1 {
    position: absolute;
    z-index: 10;
    top: 0px;
    right: 25px;
    height: 550px;
    width: 225px;
    border: 5px solid white;
    border-radius: 25px;
    float: right;
    padding-right: 8%;
}

#s3div1 {
    background-image: url('assets/volcano3.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}


提前致谢!

最佳答案

您按类名而不是双击事件所引用的对象进行引用。

而是使用$(this)的值作为双击的目标对象(包装在JQuery对象中以便于使用):

$("div#s3div1").dblclick(function (event) {
   $(this).toggleClass("overlay").toggleClass("s3div1");
});

09-25 20:48