1

所以,我正在尝试创建一个 If 语句来比较我的 Image 的来源,这样我就可以用相应的反转图像来更改它。

function changeBack() {
let image = document.getElementById('product__picture');  
    console.log(image);
if(image.src === 'assets/red.jpg'){
    image.src = ('assets/red-reversed.jpg');
    console.log(image);

} else if(image.src === 'assets/orange.jpg'){
    image.src = ('assets/orange-reversed.jpg');
}

HTML:

<article class="product">
       <h2 class="hidden">Display Picture</h2>
       <img id="product__picture" src="assets/red.jpg" alt="Laptop case">
</article>

这是我的点击按钮:

 <article id="reverse">
        <h2 class="subtitle">Select side</h2>
        <div id="reverse__container">
        <p id="front" class="reverse__text">Front</p>
        <p id="back" class="reverse__text" onclick="changeBack();">Back</p>
    </div>
    </article>
4

2 回答 2

2

您需要检查src属性而不是对象。

顺便说一句,字符串不需要括号。

function changeBack() {
    let image = document.getElementById('product__picture');

    if (image.src === 'assets/red.jpg') {
        image.src = 'assets/red-reversed.assets';
    } else if (image.src === 'assets/orange.jpg') {
        image.src = 'assets/orange-reversed.jpg';
    }
}
于 2018-11-30T13:44:10.853 回答
0

比较图像的 src 属性而不是图像对象本身!您也不需要字符串属性周围的额外括号。此外,请使用 === 代替 == 进行相同类型的相等比较。我几乎从不使用双等号。

function changeBack() {
  let image = document.getElementById('product__picture');  

  if(image.src === 'assets/red.jpg'){
      image.src = 'assets/red-reversed.assets'
  } else if(image.src === 'assets/orange.jpg') {
      image.src = 'assets/orange-reversed.jpg';
  }
}
于 2018-11-30T13:48:29.150 回答