Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.12.2016, 15:58
Новичок на форуме
Отправить личное сообщение для yameck Посмотреть профиль Найти все сообщения от yameck
 
Регистрация: 26.12.2016
Сообщений: 5

Нужна скрипт onclick..для пары картинок
Ребята, помогите пожалуйста человеку далекому от Java) Мне нужно реализовать на сайте такую штуку :
рядом друг с другом расположены две картинки. при клике на одну из них она сменяется другой и появляется надпись "вы ошиблись, попробуйте еще раз" кликаешь на надпись и возвращаешься обратно к выбору. а если выбираешь вторую картинку,то пара этих фото сменяется на новые две. и таких пары будет три.
Я так понял реализовать это можно Java. Но сам я смог только сделать чтоб одна картинка сменялась другой. Может у кого то есть похожий скрипт или дельные советы... сроки поджимают, поэтому прошу помощи тут. Спасибо за внимание!)
Ответить с цитированием
  #2 (permalink)  
Старый 26.12.2016, 16:28
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

yameck, плохо понял, но как-то так:
Выберите картинку:
<img id="i1" style= "width:100px;height:100px" src=""/>
<img id="i2" style= "width:100px;height:100px" src=""/>
<div id="mess" style="display:none">Вы ошиблись, попробуйте еще раз</div>
<script>
 var image1 = ["http://javascript.ru/cat/list/scriptaculous_54.png","http://javascript.ru/cat/list/dom.gif","http://javascript.ru/cat/list/firefox.gif"],
      image2 = ["http://javascript.ru/cat/list/jquery_54.png","http://javascript.ru/cat/list/event.gif","http://javascript.ru/cat/list/opera.gif"],
      i = 0;
        i1.src =  image1[i];
        i2.src =  image2[i];
  i1.onclick = function() {
       this.src = "http://javascript.ru/cat/list/donkey.gif";
       mess.style.display = "block";
  }
  i2.onclick = function() {
   if (i1.src != "http://javascript.ru/cat/list/donkey.gif") {
     if (i < 2 ) {
        i++;
        i1.src =  image1[i];
        i2.src =  image2[i];
     }
     else { alert("Вот и все");
        i = 0;
        i1.src =  image1[i];
        i2.src =  image2[i];
       }
    }
  }
  mess.onclick = function() {
      i1.src =  image1[i];
      mess.style.display = "none";
  }

</script>

Последний раз редактировалось Dilettante_Pro, 26.12.2016 в 17:37.
Ответить с цитированием
  #3 (permalink)  
Старый 26.12.2016, 16:40
Новичок на форуме
Отправить личное сообщение для Аууу Посмотреть профиль Найти все сообщения от Аууу
 
Регистрация: 26.12.2016
Сообщений: 3

<div id="viv1" onclick="per1()" style="background: White;font-size: 25px;color:red;text-align: center;" >
<img src="путь к файлу" alt="альтернативный текст">

</div>

<div id="viv2" onclick="per2()" style="background: White;font-size: 25px;color:red;text-align: center;" >
<img src="путь к файлу" alt="альтернативный текст">

</div>
<script type="text/javascript">

function per1(){
var a='<img src="путь к файлу" alt="альтернативный текст">'+"вы ошиблись, попробуйте еще раз";
document.getElementById("viv1").innerHTML =a;
}

function per2(){
var a='<img src="путь к файлу" alt="альтернативный текст">';
var b='<img src="путь к файлу" alt="альтернативный текст">';
document.getElementById("viv1").innerHTML =a;
document.getElementById("viv2").innerHTML =b;
}

</script>

Последний раз редактировалось Аууу, 26.12.2016 в 16:47.
Ответить с цитированием
  #4 (permalink)  
Старый 26.12.2016, 16:54
Новичок на форуме
Отправить личное сообщение для yameck Посмотреть профиль Найти все сообщения от yameck
 
Регистрация: 26.12.2016
Сообщений: 5

Ребята, спасибо вам огромное!!! Если вдруг будут вопросы по сео обращайтесь) помогу с радостью)
Ответить с цитированием
  #5 (permalink)  
Старый 26.12.2016, 17:07
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Аууу, совет на будущее: лучше делать работающие примеры
<div id="viv1" onclick="per1()" style="background: White;font-size: 25px;color:red;text-align: center;" > 
<img src="http://javascript.ru/cat/list/scriptaculous_54.png" alt="альтернативный текст">

</div>

<div id="viv2" onclick="per2()" style="background: White;font-size: 25px;color:red;text-align: center;" >
<img src="http://javascript.ru/cat/list/jquery_54.png" alt="альтернативный текст">

</div>
<script type="text/javascript">

function per1(){
var a='<img src="http://javascript.ru/cat/list/donkey.gif" alt="альтернативный текст">'+"вы ошиблись, попробуйте еще раз";
document.getElementById("viv1").innerHTML =a;
}

function per2(){
var a='<img src="http://javascript.ru/cat/list/dom.gif" alt="альтернативный текст">';
var b='<img src="http://javascript.ru/cat/list/event.gif" alt="альтернативный текст">';
document.getElementById("viv1").innerHTML =a;
document.getElementById("viv2").innerHTML =b;
}

</script>
Ответить с цитированием
  #6 (permalink)  
Старый 26.12.2016, 17:33
Новичок на форуме
Отправить личное сообщение для yameck Посмотреть профиль Найти все сообщения от yameck
 
Регистрация: 26.12.2016
Сообщений: 5

Дико извиняюсь, но еще вопрос.. Воспользовался первым вариантом. А как сделать чтобы в конце цикла все повторялось заново?то есть был не пустой экран,а снова эти пары появились? и можно как то сделать чтобы эти картинки менять местами? то есть не всегда угадываю кликая на нижнее фото..а чтоб второй случай например ответ поменять местами?

Последний раз редактировалось yameck, 26.12.2016 в 17:37.
Ответить с цитированием
  #7 (permalink)  
Старый 26.12.2016, 17:38
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

yameck,
Сообщение от yameck
А как сделать чтобы в конце цикла все повторялось заново?
Изменил пример в пост#2
Ответить с цитированием
  #8 (permalink)  
Старый 26.12.2016, 17:41
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

yameck,
Сообщение от yameck
и можно как то сделать чтобы эти картинки менять местами? то есть не всегда угадываю кликая на нижнее фото.
Еще бы знать, которая из картинок правильная...
Ответить с цитированием
  #9 (permalink)  
Старый 26.12.2016, 17:50
Новичок на форуме
Отправить личное сообщение для yameck Посмотреть профиль Найти все сообщения от yameck
 
Регистрация: 26.12.2016
Сообщений: 5

Сообщение от Dilettante_Pro Посмотреть сообщение
yameck,

Еще бы знать, которая из картинок правильная...
Тоже верно.. Еще раз большое спасибо! Вы меня очень выручили!
Ответить с цитированием
  #10 (permalink)  
Старый 26.12.2016, 18:34
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Считаем, что второй массив картинок - правильный
Выберите картинку:
<img id="i1" style= "width:100px;height:100px" src=""/>
<img id="i2" style= "width:100px;height:100px" src=""/>
<div id="mess" style="display:none; border: 1px solid red; width:400px">Вы ошиблись. Нажмите, чтобы попробовать еще раз</div>
<script>
 var image1 = ["http://javascript.ru/cat/list/scriptaculous_54.png","http://javascript.ru/cat/list/dom.gif","http://javascript.ru/cat/list/firefox.gif"],
      image2 = ["http://javascript.ru/cat/list/jquery_54.png","http://javascript.ru/cat/list/event.gif","http://javascript.ru/cat/list/opera.gif"],
      i = 0;
  randomImage();

  var test = function() {
     if(this.classList.contains("wrong")) {
        this.src = "http://javascript.ru/cat/list/donkey.gif";
        mess.style.display = "block";
     }
     else {
        if (i < 2 ) {
           i++;
           randomImage();
        }
        else { alert("Вот и все");
            i = 0;
            randomImage();
        }
     }
  }
  i1.onclick = test;
  i2.onclick = test;

  mess.onclick = function() {
      document.querySelector(".wrong").src =  image1[i];
      mess.style.display = "none";
  }
function randomImage() {
   var r = Math.random();
   if (r < 0.5) {
        i1.src =  image1[i];
        i2.src =  image2[i];
        i1.classList.remove("right");
        i2.classList.remove("wrong");
        i1.classList.add( "wrong");
        i2.classList.add("right");
   }
   else {
        i2.src =  image1[i];
        i1.src =  image2[i];
        i2.classList.remove("right");
        i1.classList.remove("wrong");
        i2.classList.add("wrong");
        i1.classList.add("right");
   }
}
</script>

Последний раз редактировалось Dilettante_Pro, 26.12.2016 в 18:57.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простейший скрипт для Оперы, нужна помощь horse Мобильный JavaScript 1 31.10.2015 00:20
Перетаскивание картинок для загрузки Schokk Элементы интерфейса 5 04.09.2015 12:49
скрипт для браузерки ванка Общие вопросы Javascript 11 11.10.2013 12:20
поиск классов внутри тега yozuul jQuery 24 14.06.2013 22:00
скрипт для выбора серий и сезонов vk Evkliptik Общие вопросы Javascript 0 23.09.2012 16:10