javascript - 单击元素以更改另一个元素的背景图像

标签 javascript html css

尝试使用 javascript 创建一个“按钮”,使用悬停在 li 元素上,这将改变另一个 li 元素的背景(phoneChange)。当鼠标悬停在相关的 li 元素上时,我想更改带有屏幕截图的手机图像。我一直在这里寻找类似的示例,但未能找到任何适合我的示例。

<ol class="list-b">
<li class="firstPhone"><span class="title">First Box</span> Lorem ipsum sit dolor.</li>
<li class="secondPhone"><span class="title">Second Box</span> Lorem ipsum sit dolor.</li>
<li class="thirdPhone"><span class="title">Third Box</span> Lorem ipsum sit dolor.</li>
<li class="fourthPhone"><span class="title">Fourth Box</span> Lorem ipsum sit dolor.</li>
<li class="fifthPhone"><span class="title">Fifth Box</span> Lorem ipsum sit dolor.</li>
<li class="sixthPhone"><span class="title">Sixth Box</span> Lorem ipsum sit dolor.</li>
<li id="phoneChange" class="firstPhone"></li>
</ol>

CSS

.firstPhone{
background: url(../images/mobile1.png) }
.secondPhone{
 background: url(../images/mobile2.png) }
.thirdPhone{
 background: url(../images/mobile3.png)}
.fourthPhone{
 background: url(../images/mobile4.png)}
.fifthPhone{
 background: url(../images/mobile5.png)}
.sixthPhone{
 background: url(../images/mobile6.png)}

最佳答案

为每个“按钮”添加一些标识(为了简单起见,我称之为按钮):

<ol class="list-b">
  <li class="button firstPhone"><span class="title">First Box</span> Lorem ipsum sit dolor.</li>
  <li class="button secondPhone"><span class="title">Second Box</span> Lorem ipsum sit dolor.</li>
  <li class="button thirdPhone"><span class="title">Third Box</span> Lorem ipsum sit dolor.</li>
  <li class="button fourthPhone"><span class="title">Fourth Box</span> Lorem ipsum sit dolor.</li>
  <li class="button fifthPhone"><span class="title">Fifth Box</span> Lorem ipsum sit dolor.</li>
  <li class="button sixthPhone"><span class="title">Sixth Box</span> Lorem ipsum sit dolor.</li>
  <li id="phoneChange"></li>
</ol>

将事件处理程序附加到这些元素:

var buttons = document.getElementsByClassName('button');

for (var i = 0; i < buttons.length; i++) {
  buttons[i].addEventListener('click', function() {
    document.getElementById('phoneChange').css.background = this.css.background;
  });
}

关于javascript - 单击元素以更改另一个元素的背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35834979/

相关文章:

html - 整页 ionic 加载而不是小框

javascript - DataTransfer.effectAllowed 在 firefox 和 chrome 浏览器中的内部实现

javascript - 获取 Facebook 用户的 UserId

javascript - 使用 css/html/javascript 将微笑转化为悲伤

html - 如何使用图像 :fixed, z-index 和滚动效果

更改元素背景图像的 Javascript 幻灯片

javascript - 如何在将组件实例移动到另一个父组件时保留组件的实例?

javascript - 如何在没有 eval 的情况下编写这段 JavaScript 代码(QUnit 模拟)?

css - Div 彼此不对齐

html - 光标与 iOS 上的输入不对齐(webkit)