Javascript.RU

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

Скрипты для изучения иностранных языков
Здравствуйте! Помогите реализовать небольшие программки на JavaScript без всяких библиотек. Дело втом, что я работаю репетитором по английскому и для того, чтобы сделать свои уроки не такими скучными и однообразными решил внедрить немного интерактивности. А именно: для лучшего и более увлекательного запоминания слов я сделал простенький слайдер картинок. Но мне нужно добавить туда поле ввода(инпут) для того чтобы написать туда то, что изображено на картинке. если введенное слово правильно, то ипоказывается след. картинка. а если не правильная то выходит сообщение.
P.S Я занимаюсь только версткой сайтов, знаю CSS, bootstrap, wordpress но к сожалению с Js отношения не сложились. Я могу на нём читать код или что-то изменить. Но самому написать не получается. Буду вам очень признателен ведь это не только для меня но и для подрастающего поколения. Заранее спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 10.03.2016, 10:57
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

Пьяный копирайтер,
Выложите пожалуйста ваш код слайдера.
Ответить с цитированием
  #3 (permalink)  
Старый 10.03.2016, 11:05
Интересующийся
Отправить личное сообщение для Пьяный копирайтер Посмотреть профиль Найти все сообщения от Пьяный копирайтер
 
Регистрация: 07.02.2015
Сообщений: 12

<style>
#main {
	position:relative;
	margin: 100px auto;
	padding: 5px;
	width: 660px;
	height:360px;
	background-color: lightgreen;
	border: 5px solid green;
	border-radius:15px;
}
#scr {
	margin:20px auto;
	width: 600px;
	height: 320px;
	margin-top:20px;
	background-color: white;
	background-size:cover;
	border: 2px solid black;
	border-radius:10px;
}
button {
	position: absolute;
	top: 150px;
	width: 25px;
	height: 70px;
	font: 12pt arial,tahoma,sans-serif;
	text-align: center;
    background-color: red;
}
.left {
	left:5px;
}
.right {
	right:5px;
}
</style>

<script>
var slider = {
	slides:['1.jpg','2.jpg','3.jpg','4.jpg','5.jpg'],
	frame:0, 
	set: function(image) { 
		document.getElementById("scr").style.backgroundImage = "url("+image+")";
	},
	init: function() { 
		this.set(this.slides[this.frame]);
	},
	left: function() { 
		this.frame--;
		if(this.frame < 0) this.frame = this.slides.length-1;
		this.set(this.slides[this.frame]);
	},
	right: function() {
		this.frame++;
		if(this.frame == this.slides.length) this.frame = 0;
		this.set(this.slides[this.frame]);		
	}
};
window.onload = function() { 
	setInterval(function() {
		slider.right();
	},5000);
};
</script>

<body>
<div id="main">
	<button class="left" onclick="slider.left();"><</button>
	<div id="scr"></div>
	<button class="right" onclick="slider.right();">></button>
</div>	
</body>
Ответить с цитированием
  #4 (permalink)  
Старый 10.03.2016, 11:46
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

Накосячил.

Последний раз редактировалось AciDWarrioR, 10.03.2016 в 11:54. Причина: неправильно прочитал задание
Ответить с цитированием
  #5 (permalink)  
Старый 10.03.2016, 11:53
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

Пьяный копирайтер,
Только у Вас почему то не устанавливается сразу 1.jpg. Поэтому мотните в сторону. Ещё, наверное, тогда надо убрать setInterval.
В общем, если сдвините на один раз вправо, то значение надо писать val2, берете значение из массива values соответсвующей картинке.
<!DOCTYPE html>
<html lang="en">
<head>
	<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<style>
	<style>
#main {
	position:relative;
	margin: 100px auto;
	padding: 5px;
	width: 660px;
	height:360px;
	background-color: lightgreen;
	border: 5px solid green;
	border-radius:15px;
}
#scr {
	margin:20px auto;
	width: 600px;
	height: 320px;
	margin-top:20px;
	background-color: white;
	background-size:cover;
	border: 2px solid black;
	border-radius:10px;
}
button {
	position: absolute;
	top: 150px;
	width: 25px;
	height: 70px;
	font: 12pt arial,tahoma,sans-serif;
	text-align: center;
    background-color: red;
}
.left {
	left:5px;
}
.right {
	right:5px;
}
input{
	margin-left: 40%;
}
</style>
</style>
<body>
<div id="main">
	<button class="left" onclick="slider.left();"><</button>
	<div id="scr"></div>
	<input id="answer" type="text"></input>
	<input type="button" value="Следущий слайд" onclick="checkSlide()"></input>
	<button class="right" onclick="slider.right();">></button>
</div>	
</body>
</html>
<script>
var slider = {
	slides:['1.jpg','2.jpg','3.jpg','4.jpg','5.jpg'],
	values:['val1', 'val2', 'val3', 'val4', 'val5'],
	frame:0, 
	set: function(image) { 
		document.getElementById("scr").style.backgroundImage = "url("+image+")";
	},
	init: function() { 
		this.set(this.slides[this.frame]);
	},
	left: function() { 
		this.frame--;
		if(this.frame < 0) this.frame = this.slides.length-1;
		this.set(this.slides[this.frame]);
	},
	right: function() {
		this.frame++;
		if(this.frame == this.slides.length) this.frame = 0;
		this.set(this.slides[this.frame]);		
	}
};
function checkSlide(){
		var currentImage = $('#scr').css('background-image'); 
	 	var number = currentImage.split('/');
	 	var numberImage1 = number[number.length-1].split('"');
	 	var numberImage2 = numberImage1[0];
	 	var count;
	 	for(i=0; i<slider.slides.length; i++){
	 		if(numberImage2 == slider.slides[i]){
	 			count = i;
	 		}
	 	}
	 	if ($('#answer').val() == slider.values[count]){
	 		slider.right();
 alert("выполнилось slider.right()");
	 	} else {
	 		alert("Неправильно, Д. Федор, ты бутерброд ешь!")
	 	}
	 }
window.onload = function() { 
};
</script>

Последний раз редактировалось AciDWarrioR, 10.03.2016 в 12:21.
Ответить с цитированием
  #6 (permalink)  
Старый 10.03.2016, 21:46
Интересующийся
Отправить личное сообщение для Пьяный копирайтер Посмотреть профиль Найти все сообщения от Пьяный копирайтер
 
Регистрация: 07.02.2015
Сообщений: 12

Вот спасибо дружище, выручил. Осталось разобраться в чем я накосячил. Почему нормально не показывает. Никак не могу понять.
Ответить с цитированием
  #7 (permalink)  
Старый 11.03.2016, 08:52
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

Пьяный копирайтер,
Ну потому что вы описали функцию init, но её не использовали). Добавьте до функции checkSlide() такую строку:
slider.init();
И будет вам счастье)

Последний раз редактировалось AciDWarrioR, 11.03.2016 в 09:02.
Ответить с цитированием
  #8 (permalink)  
Старый 11.03.2016, 14:27
Интересующийся
Отправить личное сообщение для Пьяный копирайтер Посмотреть профиль Найти все сообщения от Пьяный копирайтер
 
Регистрация: 07.02.2015
Сообщений: 12

Спасибо! Вот прям от души! Теперь буду заниматься оформлением. Расскажи где и как учился этому сложному языку.
Ответить с цитированием
  #9 (permalink)  
Старый 11.03.2016, 14:34
Аватар для AciDWarrioR
Кандидат Javascript-наук
Отправить личное сообщение для AciDWarrioR Посмотреть профиль Найти все сообщения от AciDWarrioR
 
Регистрация: 11.11.2015
Сообщений: 136

Пьяный копирайтер,
Умел прогать на C++. Пришел на работу и здрасте)
А так при помощи тут больше вообще разработку сайтов изучал . Здесь.Ну а если проблем с английским нету (ну а вы репетитор все дела) то вот ещё можно, но сам не пробывал.
Ну и по сути язык не такой уж и сложный. Открываете firebug и мучаете мучаете, со временем, думаю все получится.
Ну и конечно же этот чудесный форум, про него не забываем. Люди здесь на удивление добрые и отзывчивые, в отличие от форума php, где любят только носом тыкать в твою некомпентентность.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Скрипты для WebStorm kobezzza Оффтопик 2 29.03.2013 16:21
IDE для Java Script constant Библиотеки/Тулкиты/Фреймворки 0 27.09.2012 09:31
Удалению метаданных в JPEG lorents Библиотеки/Тулкиты/Фреймворки 2 22.04.2012 21:02
Скрипты с эффектами для фоток fastdeath Общие вопросы Javascript 4 21.07.2011 11:57