Скриптом не меняется картинка более чем 2 раза

196
01 мая 2018, 00:51

Делаю блок для выбора типа окна, и при клике должно меняться изображение, срабатывает только 2 раза

 function imgsrc(img) {
          if ($(img).attr("src") == "img/oor.png"){
            $(img).attr("src", "img/oh.png");
          }
          if ($(img).attr("src") == "img/oh.png"){
            $(img).attr("src", "img/oor.png");
          }
        }
        $('.imgee').click(function(){
            imgsrc($(this));
        });
Answer 1

Честно говоря решение не очень хорошее. У вас условие зависит от src.

  $('.imgee').click(function(){
      $(this).toggleClass('active');
  });
  .imgee img:first-child{display:block;}
  .imgee img:last-child{display:none;}
  .imgee.active img:first-child{display:none;}
  .imgee.active img:last-child{display:block;}
Answer 2

Вам необходимо правильно обдумать логику if else

 function imgsrc(img) { 
 console.log($(img).attr("src")); 
          if ($(img).attr("src") == "img/oor.png"){ 
            $(img).attr("src", "img/oh.png"); 
          } else if ($(img).attr("src") == "img/oh.png"){ 
            $(img).attr("src", "img/oor.png"); 
          } 
 
        } 
        $('.imgee').click(function(){ 
            imgsrc($(this)); 
        });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script> 
<img class="imgee" src="img/oh.png">

READ ALSO
Как передать саму функцию в bind JavaScript

Как передать саму функцию в bind JavaScript

Всем привет! Как и все, кто волею судьбы и руководства изучает JavaScript, столкнулся с передачей параметров в addEventListenerПроблема легко решается...

185
VueJS Разница между Methods и Computed

VueJS Разница между Methods и Computed

Недавно начал учить Vue и сразу-же застрял на таком моменте

190
Изменения при клике JS

Изменения при клике JS

Мне надо проверить были ли изменения при клике в iteminfo0_item_name или в iteminfo1_item_name

189
Не могу подключить файл к скрипту

Не могу подключить файл к скрипту

Есть два файла wtphp и api

185