当前位置: 首页 > 知识库问答 >
问题:

如何在JavaScript中无限切换图像

拓拔谭三
2023-03-14

(我用的是vanilla JS)所以我希望图像每1秒切换一次。 然而,它只切换一次并停止。

HTML

<img class="pic" id="pic" src=
"images/lightsOff.png">

JavaScript

function imageChange() {
  document.getElementById("pic").src = 
"images/lightsOn.png";
}

setInterval(imageChange, 1000)

共有2个答案

爱繁
2023-03-14

代码只是一遍又一遍地设置相同的src。 您需要检查src是什么并对其进行调整。 我只需要使用一个data属性,然后用interval在这两个属性之间切换。 不需要跟踪布尔值或检查图像是什么。

null

var img = document.querySelector("#flip");
window.setInterval(function () {
  var newSrc = img.dataset.src;
  img.dataset.src = img.src;
  img.src = newSrc;
}, 2000);
<img data-src="http://placekitten.com/g/200/200" src="http://placekitten.com/200/200" id="flip"/>
陆海阳
2023-03-14

你好,你应该试试这个:

let toggle = false;
function imageChange() {
  document.getElementById("pic").src = toggle ? "images/lightsOn.png" : "images/lightsOff.png";
  toggle=!toggle;
}
setInterval(imageChange, 1000)

您的问题是,您将图像设置为lightsoff每秒,但我们实际上需要每秒在lightsofflightson之间切换图像。

 类似资料:
  • 问题内容: 在和之间切换的最有效方法是什么? 问题答案: 使用NOT的解决方案 如果值是布尔值,最快的方法是使用 not 运算符: 用减法求解 如果值是数字,则从总数中减去是切换值的一种简单快捷的方法: 使用XOR的解决方案 如果值在 0 和 1 之间切换,则可以使用按位异或: 该技术可以推广到任意一对整数。异或一步被替换为预异常数: (此想法由Nick Coghlan提交,后来由@zxxc推广。

  • 相当绿色关于javas组件的东西等,所以请原谅我,如果我提供的信息是不够的! 请参阅以下代码。在框架中添加菜单和菜单显示,没有问题。我想知道何时调用gameOn()来删除菜单,而不是启动游戏。下面的代码仅使框架表面为“空白”,未添加游戏面板。 对如何修复它有何想法/建议?菜单面板上有一个鼠标听筒。

  • 现在的效果是鼠标悬浮文字切换背景图,如何改成.line自动往下滚动,滚动到下一个文字就切换当前文字的背景图,鼠标悬浮就停止滚动。

  • 我正在尝试实现一个按钮来在明暗之间切换。我有一个文件批准器,看起来像这样。。 所以当我设置getTheme(true)时,它会触发黑暗主题,而getTheme(false)会触发光明主题。问题来了,我想在中的一个组件中插入一个切换按钮,允许用户在这两个主题之间切换。本质上,组件将控制AppRouter的状态。可能吗? 你知道我从哪里开始吗?我正在使用react钩子和类型脚本。我试过各种方法,但都没

  • 我看了很多页,试图找出如何切换场景,但都没有成功。 我有一个计算器,我的目标是选择一个菜单选项来更改计算器(即:基础和科学)。现在我只是在测试,所以这里是我到目前为止与这个问题相关的代码(我使用的是场景生成器): 编辑我已经尝试了很多东西。不管怎样,我总是得到这个NullPointerException。我有一种感觉,这可能与在场景生成器中设置某些内容有关,但我就是找不到答案 工作代码: 我使用下

  • 我在我的chrome-book上使用linux beta安装,我正在尝试设置一个使用jdk 1.8版的项目。我之前设置了一个使用jdk 1.11的项目,现在看来,即使当前项目在项目设置等中配置为使用jdk 1.8,intellij使用的maven安装仍然配置为使用jdk 1.11。当我在intelliJ终端中运行java-version和mvn-verison时,出现了java 11。我也尝试更改

  • 问题内容: 请让我知道如何在JavaScript中换行。 我想要在主题中使用换行符。我需要的输出是: 问题答案: 添加到要在URL上对换行符进行编码的任何位置。 是回车符 是换行符 这是Windows机器上的新换行顺序,尽管在linux和macs上不一样,但两者都应起作用。 如果要在实际的javascript中换行,请使用转义序列。