gpt4 book ai didi

javascript - 如何从中心开始设置 div 的动画

转载 作者:行者123 更新时间:2023-12-02 19:22:29 25 4
gpt4 key购买 nike

我正在尝试从中心为 div 标签设置动画。最初我希望 div 标签不可见。当用户点击链接时,这个 div 标签应该从它的中心开始动画。我怎样才能使用 jquery 来实现这一点?这是我当前的代码。

<a href="#" class="linkone">link one</a><br><br><br><br>
<section class="one">one</section>

这是CSS

.one {
margin: 0 auto;
width: 200px;
height: 200px;
border: 1px solid red;
background: lightblue;
}

这是我的 jquery

$('a').on('click', function (e) {
e.preventDefault();
var w = 200; //$('.one').outerWidth();
var h = 200; //$('.one').outerHeight();
var x = $('.one').width() / 2;
var y = $('.one').height() / 2;
var startW = h - y/2;
var startH = w - x/2;
var endTop = y - h/2;
var endLeft = x - w/2;

$('.one').animate({
opacity: 1,
width: (w+200) + 'px',
height: (h+200) + 'px',
top: endTop+'px',
left: endLeft+'px'
}, 1000);

console.log(endLeft);
});

最佳答案

类似这样的事情: http://jsfiddle.net/TJNTq/

$('.linkone').on('click', function (e) {
e.preventDefault();
var w = 200; //$('.one').outerWidth();
var h = 200; //$('.one').outerHeight();
var x = $('.one').width() / 2;
var y = $('.one').height() / 2;
var startW = h - y/2;
var startH = w - x/2;
var endTop = y - h/2;
var endLeft = x - w/2;

$('.one').show().animate({
opacity: 1,
width: (w+200) + 'px',
height: (h+200) + 'px',
marginTop: 0 + 'px'
}, 1000);

console.log(endLeft);
});

请注意,您的顶部和左侧动画没有执行任何操作,因为 .one div 没有绝对或相对定位。

关于javascript - 如何从中心开始设置 div 的动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12372470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com