05.04.2021, 21:12
|
Аспирант
|
|
Регистрация: 04.04.2021
Сообщений: 31
|
|
Все столбцы перемещаются, но поясняющие названия только в первом столбце. Если его переместить то и названия "уедут" в другое место, столбец же окажется например в середине (с поясняющими названиями). Так вот надо что бы при перемещении столбцов поясняющие названия всегда были в первом столбце, как на скриншоте. https://prnt.sc/11511r7
То-есть перемесил столбцы местами данные, а поясняющие название опять в первом столбце и так всегда, вне зависимости от перемещения столбцов.
|
|
05.04.2021, 22:02
|
|
Профессор
|
|
Регистрация: 03.02.2020
Сообщений: 2,750
|
|
Сообщение от Dolf
|
То-есть перемесил столбцы местами данные, а поясняющие название опять в первом столбце и так всегда, вне зависимости от перемещения столбцов.
|
Я тоже ничего не понимаю.
|
|
05.04.2021, 22:07
|
Аспирант
|
|
Регистрация: 04.04.2021
Сообщений: 31
|
|
Ребята, ну посмотрите, пожалуйста, на https://auto.ru/ добавьте пару машин в сравнение и все понятно будет. Я просто уже не знаю как написать.
|
|
05.04.2021, 22:34
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Dolf,
что вам мешает создать создать надписи в отдельном столбце?
|
|
05.04.2021, 22:45
|
Аспирант
|
|
Регистрация: 04.04.2021
Сообщений: 31
|
|
Ну скажем так, нельзя в отдельном (от слова совсем). Конечно я бы сделал в отдельном, но надо как на авто.ру) По этому прошу натолкнуть примером как всегда находить этот первый столбец и именно там показывать статичные записи, а везде скрывать.
|
|
05.04.2021, 23:05
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Dolf,
тогда кешируйте надписи и по событию stop перемешайте их через 51 миллисекунду в первую ячейку
|
|
05.04.2021, 23:08
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,126
|
|
Dolf,
для структуры представленной вами выше это будет так ...
$(function() {
var text = [...document.querySelectorAll('#ex4 tr td:first-child')].map(({childNodes})=> [...childNodes].slice(0,2));
$('#ex4').sorttable({
helperCells: null,
placeholder: 'placeholder',
stop: function( event, ui ) {
setTimeout(_=> document.querySelectorAll('#ex4 tr td:first-child').forEach((td,i) => td.prepend(...text[i])), 130)
}
}).disableSelection();
});
|
|
06.04.2021, 07:12
|
|
Профессор
|
|
Регистрация: 03.02.2020
Сообщений: 2,750
|
|
Сообщение от Dolf
|
Так вот надо что бы при перемещении столбцов поясняющие названия всегда были в первом столбце, как на скриншоте. https://prnt.sc/11511r7
|
Я не знаю, где там смотреть.
Приведите пример таблицы из 3-4 столбцов.
|
|
06.04.2021, 07:23
|
|
Профессор
|
|
Регистрация: 03.02.2020
Сообщений: 2,750
|
|
Сообщение от Dolf
|
По этому прошу натолкнуть примером как всегда находить этот первый столбец и именно там показывать статичные записи, а везде скрывать.
|
Первый столбец находится
let firstcolumn = table.querySelectorAll('tr>*:first-child')
Т.е. надписи есть во всех столбцах, но показывать их нужно только в первом?
Тогда так можно
<style>
#tb td:not(:first-child)>.nadpis {
visibility: hidden;
}
</style>
<body>
<table id=tb>
<tr>
<td><span class='nadpis'>Line1</span><br>1-1<td>
<td><span class='nadpis'>Line1</span><br>1-2<td>
<td><span class='nadpis'>Line1</span><br>1-3<td>
</tr>
<tr>
<td><span class='nadpis'>Line2</span><br>2-1<td>
<td><span class='nadpis'>Line2</span><br>2-2<td>
<td><span class='nadpis'>Line2</span><br>2-3<td>
</tr>
<tr>
<td><span class='nadpis'>Line3</span><br>3-1<td>
<td><span class='nadpis'>Line3</span><br>3-2<td>
<td><span class='nadpis'>Line3</span><br>3-3<td>
</tr>
</table>
</body>
Последний раз редактировалось voraa, 06.04.2021 в 07:46.
|
|
|
|