jquery - 使用 javascript 和 css3 转换以动态高度移动 div

标签 jquery dynamic css height css-transitions

我有一个高度根据其内容而变化的 div。 div 元素位于屏幕底部,但当用户单击按钮时,div 元素将恰好上升到 div 的高度。例如,如果div 的高度为200 像素,它将向上移动200 像素,如果div 的高度为400 像素,它将向上移动400 像素。我能够获得 div 的高度并将 div 元素向上抬起,但我无法将其移回屏幕之外。这是我的代码:

<!DOCTYPE html>
<html>
<head>
<title></title>
<style type="text/css">
#button {
    height: 100px;
    width: 100px;
    background: blue;
}
#box {
    position: absolute;
    top: 100%;
    width: 100px;
    height: 100px;
    background: red;
    -webkit-transition: all 1s ease-out;
}
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
function moveUp() {
    var height = $("#box").height();
    $("#box").css('-webkit-transform', 'translate3d(0px,-'+height+'px,0)');
}
function moveDown() {
    var height = $("#box").height();
    $("#box").css('-webkit-transform', 'translate3d(0px,'+height+'px,0)');
}
</script>
</head>
<body>          
    <div id="button" onclick="moveUp();"></div>
    <div id="box" onclick="moveDown();"></div>
</body>
</html>

我还希望有一个选项,我可以通过单击同一个按钮来抬起和放下盒子。所以,需要两个解决方案:)

最佳答案

试试这个 fiddle :http://jsfiddle.net/W7NDp/2/

脚本:

var visible = false;
function moveUp() {
    if(visible)
    {
        moveDown();
    }
    else
    {
        var height = $("#box").height();
        $("#box").css('-webkit-transform', 'translate3d(0px,-'+height+'px,0)');
    }
    visible = !visible;
}
function moveDown() {
    var height = $("#box").height();
    $("#box").css('-webkit-transform', 'translate3d(0px,0px,0)');
}

关于jquery - 使用 javascript 和 css3 转换以动态高度移动 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8520198/

相关文章:

使用最新版本的 jQuery 在 IE8 中出现 Javascript 错误

jquery相同的ajax调用kill

jquery - 如何知道div中有多少个select标签?

Jquery/AJAX 动态加载内容未本地加载

@font-face 中的 CSS 相对路径

javascript - 背景图像中心与边距 : 0 auto with scroll-bar 对齐

javascript - 知道我的商品是否是最新的 - Owl Carousel

url - 单击时 Sencha Touch 动态商店 URL

javascript - D3 强制定向布局 - 在单击按钮时更改节点颜色及其链接颜色

javascript - 使用 Javascript/JQuery 动态创建具有不同点击事件处理程序的多个 HTML 按钮