按钮控制div移动方向

1.控制一个div

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			* {
   
				margin: 0;
				padding: 0;
			}

			#box1 {
   
				width: 6.25rem;
				height: 6.25rem;
				background-color: orangered;
				position: absolute;
				left: 0;
			}
		</style>
		<script type="text/javascript">
			window.onload = function() {
   
					var btn = document.getElementById("btn");
					var btn02 = document.getElementById("btn02");
					var box1 = document.getElementById("box1");


					//点击按钮后,box1向右移动(left值增大)
					btn.onclick = function(event) {
   
						event = event || window.event;
						move(box1,800,10);

					};
					btn02.onclick = function() {
   
						move(box1, 0, 10);
					};

					var timer;
					/*
					 *尝试创建一个可以简单动画的函数
					 * 参数 obj要执行动画的对象
					 * 		target:执行动画的目标位置
					 * 	   speed:移动的速度
					 */
					function move(obj, target, speed) {
   
						//关闭上一次的计时器,否则每按一次button,每开启一个计时器,此时速度不像设置的那样
						clearInterval(timer);
						var current = parseInt(getStyle(obj, "left"));
						//判断速度的正负值
						if(current>target){
   
							speed=-speed;
						}
						timer = setInterval(
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现点击按钮时,一个 `<div>` 元素从按钮移动到原来位置的动效果,你可以使用 CSS 的 `transform` 属性和动画关键帧。以下是一个示例: HTML 代码: ```html <button id="btn">点击按钮</button> <div id="box"></div> ``` CSS 代码: ```css #btn { padding: 10px 20px; background-color: #f0f0f0; border: none; cursor: pointer; } #box { width: 100px; height: 100px; background-color: #ccc; transition: transform 0.3s; /* 添加过渡效果 */ } @keyframes anim { 0% { transform: translateX(0); /* 初始状态,不移动 */ } 100% { transform: translateX(200px); /* 结束状态,移动到原来位置的偏移量 */ } } ``` JavaScript 代码: ```javascript const button = document.getElementById("btn"); const box = document.getElementById("box"); button.addEventListener("click", () => { box.style.animation = "anim 1s ease-in-out"; // 添加动画效果 }); ``` 在上述代码中,我们首先定义了一个 `<button>` 元素和一个 `<div>` 元素,并分别为它们设置了相应的样式。通过设置 `transition` 属性,我们为 `<div>` 元素添加了一个 `0.3s` 的过渡效果,使其在改变 `transform` 属性时产生平滑的动画过渡效果。 然后,我们使用 `@keyframes` 来定义动画的关键帧。在 `0%` 的关键帧中,我们将 `<div>` 元素的 `transform` 属性设置为 `translateX(0)`,即不移动。在 `100%` 的关键帧中,我们将 `transform` 属性设置为 `translateX(200px)`,使 `<div>` 元素沿 X 轴正方向移动一个偏移量。 最后,我们使用 JavaScript 代码为按钮添加了一个点击事件监听器。当按钮被点击时,我们通过为 `<div>` 元素添加 `animation` 属性并设置动画名称、持续时间和动画速度曲线,触发动画效果。 你可以根据需要调整样式和动画的属性值来实现你想要的移动动画效果。如果想要在其他方向移动,可以调整 `translateX()` 或 `translateY()` 的参数值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值