我想通过给 body
添加类名的方式,为 div
点击时的 overflow
属性设置 transition-delay
,实现过渡效果,代码如下:
$("div").click(function(){
$("body").addClass("no_overflow");
});
div{
background:lime;
height:2000px;
}
.no_overflow{
overflow:hidden;
}
body{
overflow:auto;
transition: overflow 0 2s;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>I'm div</div>
我知道可以使用 setTimeout 函数来实现这一点,但是想知道为什么不能使用 CSS 过渡来实现?CSS 过渡可以应用于哪些特定的样式属性吗?
height
属性而不是overflow
属性,以达到大致相同的外观。 - TylerHoverflow
为hidden
时,它不会以相同的方式裁剪窗口。无论如何,我最终使用了setTimeout
。;) - Nikunj Madhogaria