请使用jquery控制一个盒子中心位置不变而长度和宽度增加两倍
时间: 2024-12-30 15:39:48 浏览: 7
在jQuery中,你可以通过CSS样式和一些计算来实现这个效果。首先,你需要选择你要操作的盒子元素,然后可以使用`animate()`函数来改变其尺寸,并设置`position`属性为`absolute`或`fixed`来保持中心位置相对于视口固定。这里是一个简单的示例:
```javascript
// 假设你的盒子元素ID为"myBox"
var box = $("#myBox");
// 设置初始样式,例如宽度和高度为50px,居中显示
box.css({
width: "50px",
height: "50px",
position: "absolute",
left: "50%",
top: "50%",
transform: "translate(-50%, -50%)", // 使用transform调整元素中心位置
});
// 动画效果,让盒子长度和宽度翻倍
box.animate({
width: "100px",
height: "100px",
}, 1000); // 这里1000是动画持续时间,单位是毫秒
// 保持中心位置不变
$("#myBox").css("left", Math.max(0, ($(window).width() - $("#myBox").outerWidth()) / 2) + "px");
$("#myBox").css("top", Math.max(0, ($(window).height() - $("#myBox").outerHeight()) / 2) + "px");
```
在这个例子中,我们先设置了元素的初始位置使其居中,然后使用`animate()`函数改变大小,在动画过程中,元素中心位置会自动保持不变。
阅读全文