Javascript.RU

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

Помогите решить задачку
<!DOCTYPE HTML>
<html>
<head>
<title>title</title>
</head>
<body>
<table>
	<tr><td>1<td>2<td>3
	<tr><td>4<td>5<td>6
	<tr><td>7<td>8<td>9
</table>
</body>
</html>


Дана таблица вида:
1 2 3
4 5 6
7 8 9

По нажатию на кнопку сделайте из нее таблицу:
1 4 7
2 5 8
3 6 9

Таблица может быть любого размера (но квадратная).
Ответить с цитированием
  #2 (permalink)  
Старый 26.07.2017, 01:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от LinaInverse
Таблица может быть любого размера (но квадратная).
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>


</head>

<body>
<table>
  <tr><td>1<td>2<td>3
  <tr><td>4<td>5<td>6
  <tr><td>7<td>8<td>9
</table>

<table>
  <tr>
      <td>1</td>
      <td>2</td>
  </tr>
  <tr>
      <td>3</td>
      <td>4</td>
  </tr>
  <tr>
      <td>5</td>
      <td>6</td>
  </tr>
  <tr>
      <td>7</td>
      <td>8</td>
  </tr>
  <tr>
      <td>9</td>
      <td>10</td>
  </tr>
</table>

 <script>
document.querySelectorAll("table").forEach(table=>{
var trs = table.querySelectorAll("tr");
var tds = table.querySelectorAll("td");
var t = trs.length;
tds.forEach((td,i) => trs[i%t].append(td));
})


  </script>

</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 26.07.2017, 02:05
Интересующийся
Отправить личное сообщение для LinaInverse Посмотреть профиль Найти все сообщения от LinaInverse
 
Регистрация: 01.07.2017
Сообщений: 10

Спасибо, а как ее на Jquery решить?
Ответить с цитированием
  #4 (permalink)  
Старый 26.07.2017, 02:10
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Сообщение от LinaInverse Посмотреть сообщение
Спасибо, а как ее на Jquery решить?
<!DOCTYPE HTML>
<html>
<head>
<title>title</title>
</head>
<body>
<table>
	<tr><td>1<td>2<td>3
	<tr><td>4<td>5<td>6
	<tr><td>7<td>8<td>9
</table>
___________________________________

<table>
	<tr><td>1<td>2<td>3
	<tr><td>4<td>5<td>6
</table>

<button>Клик</button>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$('button').click(function(){
	$("table").each(function(){
			var trs = $(this).find("tr");
			var tds = $(this).find("td");
			var t = trs.length;
		tds.each(function(i){ 
			 trs.eq(i%t).append($(this));
		});
	});
});
</script>
</body>
</html>


https://plainjs.com/javascript/ - вот вам полезная ссылка

я кстати эту задачку видел где-то, может даже тут в форуме.
Ответить с цитированием
  #5 (permalink)  
Старый 26.07.2017, 02:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

LinaInverse,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
$("table").each((i,table)=>{
var trs = $(table).find("tr");
var tds = $(table).find("td");
var t = trs.length;
tds.each((i,td) => trs[i%t].append(td));
})
});
  </script>
</head>

<body>
<table>
  <tr><td>1<td>2<td>3
  <tr><td>4<td>5<td>6
  <tr><td>7<td>8<td>9
</table>

<table>
  <tr>
      <td>1</td>
      <td>2</td>
  </tr>
  <tr>
      <td>3</td>
      <td>4</td>
  </tr>
  <tr>
      <td>5</td>
      <td>6</td>
  </tr>
  <tr>
      <td>7</td>
      <td>8</td>
  </tr>
  <tr>
      <td>9</td>
      <td>10</td>
  </tr>
</table>
</body>
</html>
Ответить с цитированием
  #6 (permalink)  
Старый 26.07.2017, 02:19
Интересующийся
Отправить личное сообщение для LinaInverse Посмотреть профиль Найти все сообщения от LinaInverse
 
Регистрация: 01.07.2017
Сообщений: 10

Спасибо большое, ссылка как заменить функции Jquery, спасибо
Ответить с цитированием
  #7 (permalink)  
Старый 26.07.2017, 02:25
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Сообщение от LinaInverse Посмотреть сообщение
Спасибо большое, ссылка как заменить функции Jquery, спасибо
Типа того

Рони, я смотрю вы активно на стрелки перешли.
Ответить с цитированием
  #8 (permalink)  
Старый 26.07.2017, 02:31
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

j0hnik,
как по второму клику вернуть сделать из нового исходное состояние?
Ответить с цитированием
  #9 (permalink)  
Старый 26.07.2017, 02:41
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Сообщение от рони Посмотреть сообщение
j0hnik,
как по второму клику вернуть сделать из нового исходное состояние?
сделать каждый второй клик вместо append , prepend.
а вы как бы сделали?
Ответить с цитированием
  #10 (permalink)  
Старый 26.07.2017, 02:43
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

лучше счетчик в обратную сторону
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить задачку на jQuery. Готов заплатить. shevgeny Javascript под браузер 1 05.05.2014 12:07
Помогите решить задачку. Андрей_ Javascript под браузер 3 26.06.2012 16:21
Помогите решить задачку (Простую но непонятную) Suharik Элементы интерфейса 15 01.06.2010 22:30
Помогите решить задачку valero Элементы интерфейса 10 07.03.2010 16:41
помогите решить задачку с while natalia120390 Общие вопросы Javascript 46 16.06.2009 17:32