【发布时间】:2020-03-29 14:37:45
【问题描述】:
我正在使用一个库来比较不同的照片,比如“之前和之后”之类的东西,它们在另一个之上显示,并且中心有一个按钮,您可以向左或向右拖动查看差异。
现在,我要做的是实现两个按钮 - 一个在图片左侧,一个在右侧。 当您单击这些按钮时,我希望照片与前两个或后两个一起更改。
我为按钮做了一个 if 语句,但它们不能正常工作,虽然我没有注意到任何明显的错误。
HTML 代码
<div id="wrapper">
<div class="arrowsContainer">
<div id="leftArrow">
<p>Left</p>
</div>
</div>
<div class="cd-image-container">
<img src="" id="originalImage" alt="Original Image">
<div class="cd-resize-img">
<img src="" id="modifiedImage" alt="Modified Image">
</div>
<span class="cd-handle"></span>
</div>
<div class="arrowsContainer">
<div id="rightArrow">
<p>Right</p>
</div>
</div>
</div>
JavaScript 代码
let originalImage = document.querySelector('#originalImage');
let modifiedImage = document.querySelector('#modifiedImage');
document.querySelector('#leftArrow').addEventListener("click", function(){
if ((modifiedImage.src = "img/3.jpg") && (originalImage.src = "img/4.jpg")){
modifiedImage.src = "img/1.jpg";
originalImage.src = "img/2.jpg";
}
});
document.querySelector('#rightArrow').addEventListener('click', function(){
if ((modifiedImage.src = "img/1.jpg") && (originalImage.src = "img/2.jpg")){
modifiedImage.src = "img/3.jpg";
originalImage.src = "img/4.jpg";
}
if ((modifiedImage.src = "img/3.jpg") && (originalImage.src = "img/4.jpg")){
modifiedImage.src = "img/5.jpg";
originalImage.src = "img/6.jpg";
}
if ((modifiedImage.src = "img/5.jpg") && (originalImage.src = "img/6.jpg")){
modifiedImage.src = "img/7.jpg";
originalImage.src = "img/8.jpg";
}
});
现在,如果我打开页面,会显示照片 1 和 2。如果我点击“右”按钮,它将显示图片 7 和 8,然后从那里,如果我点击“左”按钮,它将再次显示图片 1 和 2,尽管我在“左”的条件是按钮甚至不包括您在图片 7 和 8 中的场景。
请帮忙,我真的不明白发生了什么
【问题讨论】:
-
您在 if 语句中使用了单个 equal。那应该是“===”比较运算符。
标签: javascript html onclick dom-events