Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.09.2017, 13:36
Аспирант
Отправить личное сообщение для Vardges Посмотреть профиль Найти все сообщения от Vardges
 
Регистрация: 28.08.2017
Сообщений: 30

Рандомное число в блок
Добрый день. Нужно сгенерировать рандомное число при клике и встативть в div на которого кликнули.
var elem=document.querySelectorAll('.element');//.element класс div-а

for (var i=0;i<elem.length;i++){
	elem[i].addEventListener('click',F);
}
function F(){
	var tiv=parseInt(Math.random()*9);
}

проблема в том что не могу вписать полученое число в div. querySelectorAll не работает ф с помошью this не знаю как,если даже это возможно.
Ответить с цитированием
  #2 (permalink)  
Старый 06.09.2017, 13:47
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,791

Vardges,
<div class="element">
asd
</div><div class="element">
asd
</div>
<script>
var elems=document.querySelectorAll('.element');//.element класс div-а
for(var i=0; i < elems.length; i++){
	elems[i].addEventListener('click',function(){
		this.innerHTML=(Math.random()*9).toFixed();
	});
};
</script>
Ответить с цитированием
  #3 (permalink)  
Старый 06.09.2017, 13:49
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

<!DOCTYPE html>
<html lang="en">
<head>
	<style>
		div{
			display: inline-block;
			width: 30px;
			height: 30px;
			border: 1px solid red;
		}
	</style>
</head>
<body>
	<div class="element">-</div>
	<div class="element">-</div>
	<div class="element">-</div>
	<div class="element">-</div>
	<script>
		[].forEach.call(document.querySelectorAll('.element'), function(el){
			el.onclick=function(){
				el.innerHTML = Math.floor(Math.random() * 9);
			};
		});
	</script>
</script>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 06.09.2017, 14:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Vardges,
function F(){
  this.innerHTML=parseInt(Math.random()*9);
}
Ответить с цитированием
  #5 (permalink)  
Старый 06.09.2017, 14:34
Аспирант
Отправить личное сообщение для Vardges Посмотреть профиль Найти все сообщения от Vardges
 
Регистрация: 28.08.2017
Сообщений: 30

Сообщение от рони Посмотреть сообщение
Vardges,
function F(){
  this.innerHTML=parseInt(Math.random()*9);
}
Спасибо
Ответить с цитированием
  #6 (permalink)  
Старый 06.09.2017, 15:35
Аспирант
Отправить личное сообщение для Vardges Посмотреть профиль Найти все сообщения от Vardges
 
Регистрация: 28.08.2017
Сообщений: 30

А как можно вытащить значения с Div и сравнить их между собой?
var elem=document.querySelectorAll('.element');

for (var i=0;i<elem.length;i++){
	elem[i].addEventListener('click',F);
}
function F(){
	this.innerText=parseInt(Math.random()*9);
	var tiv=this.innerText;
	tiv=Number(tiv);
	for (var i=0;i<elem.length;i++){
	if(tiv==elem[i]){
		var r=parseInt(Math.random()*255);
			var g=parseInt(Math.random()*255);
			var b=parseInt(Math.random()*255);
			this.style.background="green";
	}
}
}

пока что додумался до такого но не могу понять с чем сравнить переменную "tiv"
Ответить с цитированием
  #7 (permalink)  
Старый 06.09.2017, 16:09
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,791

Vardges, Свойство innerText лучше не использовать.
https://developer.mozilla.org/ru/doc...Node/innerText

Сообщение от Vardges
не могу понять с чем сравнить переменную "tiv"
С обработанным значением другого тэга.

В некоторых случаях коллекция «elem» внутри функции «F» может быть недоступна.
https://habrahabr.ru/post/78991/
https://learn.javascript.ru/functions-closures
Ответить с цитированием
  #8 (permalink)  
Старый 06.09.2017, 16:19
Аспирант
Отправить личное сообщение для Vardges Посмотреть профиль Найти все сообщения от Vardges
 
Регистрация: 28.08.2017
Сообщений: 30

[quote=Nexus;463876]Vardges, Свойство innerText лучше не использовать.
https://developer.mozilla.org/ru/doc...Node/innerText


С обработанным значением другого тэга.

В некоторых случаях коллекция «elem» внутри функции «F» может быть недоступна.
https://habrahabr.ru/post/78991/
https://learn.javascript.ru/functions-closures[/QUOT]
я чайник пока что так что нечего не понял,можно разжевать?использую хром

Последний раз редактировалось Vardges, 06.09.2017 в 16:34.
Ответить с цитированием
  #9 (permalink)  
Старый 06.09.2017, 16:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от Vardges
А как можно вытащить значения с Div и сравнить их между собой?
обьясните что хотите сделать? как сравнить и что потом?
Ответить с цитированием
  #10 (permalink)  
Старый 06.09.2017, 16:54
Аспирант
Отправить личное сообщение для Vardges Посмотреть профиль Найти все сообщения от Vardges
 
Регистрация: 28.08.2017
Сообщений: 30

Сообщение от рони Посмотреть сообщение
обьясните что хотите сделать? как сравнить и что потом?
задать стиль равным по значению блокам
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ховер и появляющий блок Shuryga Элементы интерфейса 3 28.09.2015 14:39
Рандомное число от 13-69 jack3dm Общие вопросы Javascript 2 27.09.2015 09:48
Помогите новичку! Рандомное число dievall Ваши сайты и скрипты 1 01.12.2014 08:24
Копирование блоков в блок maximus Events/DOM/Window 1 14.09.2013 19:40
node.js рандомное число web_programmist AJAX и COMET 3 07.01.2013 03:44