gpt4 book ai didi

JavaScript 隐藏/显示动画

转载 作者:行者123 更新时间:2023-11-28 02:09:29 25 4
gpt4 key购买 nike

我想单击我的图像,使其消失并移至右侧的其他位置。目前,我的图像从屏幕右侧消失。请帮助我使用 timeout() 创建一个代码,允许我的图像隐藏和显示。

php code
<div id= "ben" style= "position: relative; visibility: visible;" onclick="moveRight()" >
<img src = "images/ben.JPG" height = "250" width = "200" alt= "Picture of Peek-a-boo Ben"/>


//JavaScript for a hide/show image in different location
var ben = null;
var animate ;
function init(){
ben = document.getElementById('ben');
ben.style.position= 'relative';
ben.style.left = '0px';
}
function moveRight(){
ben.style.left = parseInt(ben.style.left) + 10 + 'px';
animate = setTimeout(moveRight,20); // call moveRight in 20msec
}
function stop(){
clearTimeout(animate);
ben.style.left = '0px';
}
window.onload =init;

最佳答案

我个人肯定会为此使用jquery....

但是如果你想要纯 JavaScript 的形式,这里就是......尽管动画是使用 CSS 完成的。

//JavaScript for a hide/show image in different location
var ben = null;
var animate=0 ;
function init(){
ben = document.getElementById('ben');
}

function toggled(){

var image = document.getElementById('image2');
if( animate==0){
animate = 1;
image.className= "right";}
else if(animate==1){
animate=0;
image.className= "left";}
}

window.onload =init;

DEMO HERE ....只需调整 CSS 中的 From 和 To 即可将其移得更远或更近

以及相关的 CSS...

.right {
-webkit-transform: translateX(150px);
-webkit-animation-name: right;
-webkit-animation-duration: 2s;
-webkit-animation-iteration-count: 1;
}

.left {
-webkit-transform: translateX(0px);
-webkit-animation-name: left;
-webkit-animation-duration: 2s;
-webkit-animation-iteration-count: 1;
}
@-webkit-keyframes right { from { -webkit-transform: translateX(0px); }
to { -webkit-transform: translateX(150px); }}

@-webkit-keyframes left { from { -webkit-transform: translateX(150px); }
to { -webkit-transform: translateX(0px); }}

编辑

这就是使用 JQuery...不需要 CSS...上面的所有代码行 ^^ 减少到两行...一定喜欢 Jquery :) 使用内置的实际上可以变得更简单在toggle()函数中......

var tog=0;
$('#ben').click(function(){
if(tog==0){$('#image2').animate({marginLeft: "250"}, 1500);tog=1; return false;}
else if(tog==1){$('#image2').animate({marginLeft: "0"}, 1500);tog=0; return false;
} });

DEMO HERE

(注意...如果您打算使用此代码,则必须包含 Jquery 库,并调用 $(document).ready(function(){...

此外,您不必再在 HTML 中执行 onclick...

ie... <div onclick="moveRight()">

Jquery 使用 click() 为您处理它

关于JavaScript 隐藏/显示动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17311620/

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