Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.02.2015, 15:30
Интересующийся
Отправить личное сообщение для taktak Посмотреть профиль Найти все сообщения от taktak
 
Регистрация: 05.12.2014
Сообщений: 27

разделить на колонки элементы
есть много таблиц, генерируются динамически, нужно разделить на две колонки, пробую обернуть в div, но не получается.


<script>
$('table:eq(2)').append('</div><div class="2">');
</script>



<table>
<tr>
<td></td><td></td>
</tr>
</table>

<table>
<tr>
<td></td><td></td>
</tr>
</table>
<table>
<tr>
<td></td><td></td>
</tr>
</table>

<table>
<tr>
<td></td><td></td>
</tr>
</table>
Ответить с цитированием
  #2 (permalink)  
Старый 05.02.2015, 16:45
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от taktak
пробую обернуть в div, но не получается.
<script>
$('table:eq(2)').append('</div><div class="2">');
</script>
Это не "оборачивание"... Метод append() выполняет совсем другие действия
Цитата:
Добавляет контент внутрь каждого элемента набора. Добавляемый контент следует за уже существующим.
Данный метод подобен применению appendChild.
http://jquery-docs.ru/Manipulation/append/
Ответить с цитированием
  #3 (permalink)  
Старый 05.02.2015, 16:49
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от taktak
table:eq(2)
Этот селектор вообще выбирает только одиночный элемент...

Сообщение от taktak
есть много таблиц, генерируются динамически, нужно разделить на две колонки
Как вариант...

<!DOCTYPE html>
<html ng-app>
<head>
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="http://code.angularjs.org/1.1.4/angular.min.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<style type='text/css'>
.right {
	float: right;
}
</style>
<script type='text/javascript'>
$(function(){
	$('table:even').wrap('<div class="right"></div>');
});
</script>
</head>
<body> 
<table border='1'>
<tr>
<td>0</td><td>0</td>
</tr>
</table>

<table border='1'>
<tr>
<td>1</td><td>1</td>
</tr>
</table>

<table border='1'>
<tr>
<td>2</td><td>2</td>
</tr>
</table>

<table border='1'>
<tr>
<td>3</td><td>3</td>
</tr>
</table>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 05.02.2015, 18:22
Интересующийся
Отправить личное сообщение для taktak Посмотреть профиль Найти все сообщения от taktak
 
Регистрация: 05.12.2014
Сообщений: 27

спасибо большое, интересный вариант. а на javascript (без подключения библиотек) есть какое-то решение ?
Ответить с цитированием
  #5 (permalink)  
Старый 06.02.2015, 00:53
Аспирант
Посмотреть профиль Найти все сообщения от freee
 
Регистрация: 05.02.2015
Сообщений: 51

Сообщение от taktak
а на javascript (без подключения библиотек) есть какое-то решение ?
Может как-то так,
<html>
<head>
<style>
.right {
    float: right;
}
</style>
</head>

<body>
<table border='1'>
<tr>
<td>0</td><td>0</td>
</tr>
</table>
 
<table border='1'>
<tr>
<td>1</td><td>1</td>
</tr>
</table>
 
<table border='1'>
<tr>
<td>2</td><td>2</td>
</tr>
</table>
 
<table border='1'>
<tr>
<td>3</td><td>3</td>
</tr>
</table>

<script>

c=0
;[].forEach.call(document.querySelectorAll("table"), function(el){if(c++%2==0) el.className="right"})


</script>

</body>
</html>

?
Ответить с цитированием
  #6 (permalink)  
Старый 06.02.2015, 09:03
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от freee
Может как-то так,
Что же ты, используя document.querySelectorAll(), не взял "мой" селектор?
Ответить с цитированием
  #7 (permalink)  
Старый 06.02.2015, 09:14
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от taktak
а на javascript (без подключения библиотек) есть какое-то решение ?
Разумеется!

Вот вариант вообще без скриптов.

<!DOCTYPE html>
<html ng-app>
<head>
<!--
<script src='http://code.jquery.com/jquery-latest.js'></script>
<script src="http://code.angularjs.org/1.1.4/angular.min.js"></script>
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<style type='text/css'>
table:nth-child(odd) {
	float: right;
}
</style>
<script type='text/javascript'>
</script>
</head>
<body> 
<table border='1'>
<tr>
<td>0</td><td>0</td>
</tr>
</table>

<table border='1'>
<tr>
<td>1</td><td>1</td>
</tr>
</table>

<table border='1'>
<tr>
<td>2</td><td>2</td>
</tr>
</table>

<table border='1'>
<tr>
<td>3</td><td>3</td>
</tr>
</table>
</body>
</html>

Правда и оборачивания ДИВами тут нет...
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти все элементы с определенным id izcian Общие вопросы Javascript 5 17.12.2013 04:57
Выбрать элементы, в которые вложен элемент с id. Вадимчег jQuery 3 24.11.2012 10:38
при изменении размера div элементы съезжают gallyamov jQuery 5 22.08.2012 10:24
Верстка в две колонки greatilya (X)HTML/CSS 8 05.08.2011 00:40
Не совсем обычный фрейм и выезжающий текст при наводе на картинку. amaz245 Элементы интерфейса 35 25.12.2010 17:29