26.12.2016, 15:58
|
Новичок на форуме
|
|
Регистрация: 26.12.2016
Сообщений: 5
|
|
Нужна скрипт onclick..для пары картинок
Ребята, помогите пожалуйста человеку далекому от Java) Мне нужно реализовать на сайте такую штуку :
рядом друг с другом расположены две картинки. при клике на одну из них она сменяется другой и появляется надпись "вы ошиблись, попробуйте еще раз" кликаешь на надпись и возвращаешься обратно к выбору. а если выбираешь вторую картинку,то пара этих фото сменяется на новые две. и таких пары будет три.
Я так понял реализовать это можно Java. Но сам я смог только сделать чтоб одна картинка сменялась другой. Может у кого то есть похожий скрипт или дельные советы... сроки поджимают, поэтому прошу помощи тут. Спасибо за внимание!)
|
|
26.12.2016, 16:28
|
Профессор
|
|
Регистрация: 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.
|
|
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.
|
|
26.12.2016, 16:54
|
Новичок на форуме
|
|
Регистрация: 26.12.2016
Сообщений: 5
|
|
Ребята, спасибо вам огромное!!! Если вдруг будут вопросы по сео обращайтесь) помогу с радостью)
|
|
26.12.2016, 17:07
|
Профессор
|
|
Регистрация: 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>
|
|
26.12.2016, 17:33
|
Новичок на форуме
|
|
Регистрация: 26.12.2016
Сообщений: 5
|
|
Дико извиняюсь, но еще вопрос.. Воспользовался первым вариантом. А как сделать чтобы в конце цикла все повторялось заново?то есть был не пустой экран,а снова эти пары появились? и можно как то сделать чтобы эти картинки менять местами? то есть не всегда угадываю кликая на нижнее фото..а чтоб второй случай например ответ поменять местами?
Последний раз редактировалось yameck, 26.12.2016 в 17:37.
|
|
26.12.2016, 17:38
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
yameck,
Сообщение от yameck
|
А как сделать чтобы в конце цикла все повторялось заново?
|
Изменил пример в пост#2
|
|
26.12.2016, 17:41
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
yameck,
Сообщение от yameck
|
и можно как то сделать чтобы эти картинки менять местами? то есть не всегда угадываю кликая на нижнее фото.
|
Еще бы знать, которая из картинок правильная...
|
|
26.12.2016, 17:50
|
Новичок на форуме
|
|
Регистрация: 26.12.2016
Сообщений: 5
|
|
Сообщение от Dilettante_Pro
|
yameck,
Еще бы знать, которая из картинок правильная...
|
Тоже верно.. Еще раз большое спасибо! Вы меня очень выручили!
|
|
26.12.2016, 18:34
|
Профессор
|
|
Регистрация: 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.
|
|
|
|