Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 06.09.2017, 17:14
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,111

Vardges,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
   body{
     display: flex;
      flex-wrap: wrap;
       justify-content: center;
   }

  .element  {
    border: 1px dashed Gray; padding: 5px; height: 100px; width: 100px;
  }

  </style>

  <script>
window.addEventListener('DOMContentLoaded', function() {
var elem=document.querySelectorAll('.element');
var color = {};
for (var i=0;i<elem.length;i++){
  elem[i].addEventListener('click',F);
}
function F(){

  var tiv = parseInt(Math.random()*9);
  this.textContent = tiv;
  if (!color[tiv]) {
    var r=parseInt(Math.random()*255);
    var g=parseInt(Math.random()*255);
    var b=parseInt(Math.random()*255);
    color[tiv] = "rgb("+r+", "+g+", "+b+")"

  }
  this.style.backgroundColor = color[tiv]

}


  });

  </script>
</head>

<body>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
</body>
</html>
Ответить с цитированием
  #12 (permalink)  
Старый 06.09.2017, 18:11
Аспирант
Отправить личное сообщение для Vardges Посмотреть профиль Найти все сообщения от Vardges
 
Регистрация: 28.08.2017
Сообщений: 30

Сообщение от рони Посмотреть сообщение
Vardges,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
   body{
     display: flex;
      flex-wrap: wrap;
       justify-content: center;
   }

  .element  {
    border: 1px dashed Gray; padding: 5px; height: 100px; width: 100px;
  }

  </style>

  <script>
window.addEventListener('DOMContentLoaded', function() {
var elem=document.querySelectorAll('.element');
var color = {};
for (var i=0;i<elem.length;i++){
  elem[i].addEventListener('click',F);
}
function F(){

  var tiv = parseInt(Math.random()*9);
  this.textContent = tiv;
  if (!color[tiv]) {
    var r=parseInt(Math.random()*255);
    var g=parseInt(Math.random()*255);
    var b=parseInt(Math.random()*255);
    color[tiv] = "rgb("+r+", "+g+", "+b+")"

  }
  this.style.backgroundColor = color[tiv]

}


  });

  </script>
</head>

<body>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
</body>
</html>
Нет,тут каждая цифра изначально имеет свой цвет, а нужно чтоб они покрасились только тогда когда есть 2 или более одинаковых цифр.
Ответить с цитированием
  #13 (permalink)  
Старый 06.09.2017, 18:54
Аватар для 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>
	<div class="element">-</div>
	<div class="element">-</div>
	<div class="element">-</div>
	<div class="element">-</div>
	<script>
		var elm = document.querySelectorAll('.element');
		elm.forEach(el=> el.onclick=e=>{
				el.innerHTML = Math.floor(Math.random() * 9);
				col();
			});
		function col(){
			elm.forEach(el=>el.style.backgroundColor = 'white');
			var arr = [].slice.call(elm);
			arr.filter((el, i)=> { 
				while (i--) if (+el.textContent == +arr[i].textContent){
					el.style.backgroundColor = 'red';
					arr[i].style.backgroundColor = 'red';
				}
			});
		};
	</script>
</script>
</body>
</html>


может можно как то проще

Последний раз редактировалось j0hnik, 06.09.2017 в 18:58.
Ответить с цитированием
  #14 (permalink)  
Старый 06.09.2017, 18:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,111

Vardges,
не копируйте сообщение целиком
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
   body{
     display: flex;
      flex-wrap: wrap;
       justify-content: center;
   }

  .element  {
    border: 1px dashed  rgb(0, 0, 255); padding: 5px; height: 100px; width: 100px;
  }

  </style>

  <script>
window.addEventListener('DOMContentLoaded', function() {
var elem=document.querySelectorAll('.element');
for (var i=0;i<elem.length;i++){
  elem[i].addEventListener('click',F);
}
function F(){

  var tiv = parseInt(Math.random()*9);
  this.textContent = tiv;
  this.setAttribute("tiv", tiv);
  var elem = document.querySelectorAll('[tiv="'+tiv+'"]');
  var color = "transparent";
  if (elem.length > 1) {
    var r=parseInt(Math.random()*255);
    var g=parseInt(Math.random()*255);
    var b=parseInt(Math.random()*255);
    color = "rgb("+r+", "+g+", "+b+")"

  };
  for (var i=0;i<elem.length;i++){
  elem[i].style.backgroundColor = color
  }
}


  });

  </script>
</head>

<body>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
</body>
</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ховер и появляющий блок 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