Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   "colspan"? не, не слышал. (https://javascript.ru/forum/misc/61418-colspan-ne-ne-slyshal.html)

AciDWarrioR 18.02.2016 12:04

Цитата:

Сообщение от laimas
Теперь понятно для чего?

:( :blink::no:
Я понял, что для строк, но почему именно три, это для меня загадка.
Я для строк ввел переменную count = 0, в зависимости чему она равна (0, 1, 2, 3), Выполняется свои изменения для строки, если count = 4, обнулить. Так как одна запись из БД занимает 4 строки. Вот как то так.

рони 18.02.2016 12:17

AciDWarrioR,
Цитата:

Сообщение от laimas
if((!(n % 4) || (n & 3) == 1) && R.cells.length == c)

перевод - в каждой 4 строке или следующей после 4 при условии что в строке вставлены уже все ячейки числом 11 ... сделать нужным ячейкам colSpan и удалить лишние ячейки
тоже самое без &
if((!(n % 4) || !( (n-1) % 4)) && R.cells.length == c) {
          R.cells[0].colSpan = 2;
          R.cells[4].colSpan = 2;
          R.deleteCell(-1);
          R.deleteCell(-1);
       }

laimas 18.02.2016 12:36

!( (n-1) % 4)) - а какая хрен разница?

рони 18.02.2016 12:55

Цитата:

Сообщение от laimas
а какая хрен разница?

интересны разные варианты

AciDWarrioR 18.02.2016 13:01

При условии, что строки не идентичны вот такой вариант:
if(R.cells.length == cell) {
if (count == 4){
....
count = 0;
}
if(count == 0){
count++;
....
}
} else if(count == 1){
count++;
....
}
и т.д.

laimas 18.02.2016 16:13

Цитата:

Сообщение от рони
интересны разные варианты

Так разве кто спорит :)

laimas 18.02.2016 16:28

Цитата:

Сообщение от AciDWarrioR
При условии, что строки не идентичны вот такой вариант

Для чего? И еще один момент - представим, что таблица больших размеров, поэтому строить таблицу портянками не разумно, а в случае, если размеры есть динамически изменяемый параметр, то практически не возможно без постоянной правки кода, или как раз приблуд, типа счетчик/флаги с проверками по условиям.

Желательно наоборот как можно меньше всего этого и проверок тоже. Например, выражение:

if((!(n % 4) || !( (n-1) % 4)) && R.cells.length == c)

более разумнее, чем:

if(R.cells.length == c && (!(n % 4) || !( (n-1) % 4)))

хотя "от перемены мест слагаемых сумма их не изменяется". :)

PS. Объединять ячейки (по условию) нужно в каждой пятой и следующей за ней строке. Каждую пятую определяет n % 4, а следующую за ней (n-1) % 4 или (n & 3) == 1.

laimas 18.02.2016 17:02

Цитата:

Сообщение от AciDWarrioR
Так как одна запись из БД занимает 4 строки. Вот как то так.

Вот это уже перл, если только не своеобразное мышление. ) В базе не может быть записей, которые занимают N строк html-таблицы. В базе может быть N идентичных значений, которые можно вывести единожды, объединив ячейки колонки таблицы. Именно так, так как объединить можно только ячейки, строки таблицы объединить нельзя. А N идентичных записей, которые нужно поместить, в одной строке таблицы.... даже трудно и представить записи в SQL таблице "в ширину". Здесь скорее речь о родителях -> потомках идет?

И, если таблицу строить на сервере, то это меньше крови будет.

AciDWarrioR 18.02.2016 17:16

Цитата:

Сообщение от laimas
if((!(n % 4) || !( (n-1) % 4)) && R.cells.length == c)

более разумнее, чем:

if(R.cells.length == c && (!(n % 4) || !( (n-1) % 4)))

Тут ты меня режешь без ножа. Не дошел я до этого ещё. И вот читаю, как будто первоклассник квантовую механику.
Цитата:

Сообщение от laimas
Так как одна запись из БД занимает 4 строки. Вот как то так.

В общем, объясню на пальцах, тем более уже выглядит все нормально.
В БД запись про один снимок составляет 34 колонки. Для пользователя выводится около 12+4 выпадающие строки из них. Уместить в одну строку html таблицы, не айсно. Поэтому было решено, разбить экран на две колонки: таблица и карта. Поэтому я разбивал запись на 4 строки таблицы. Вот погляди как это выглядит сейчас)


Теперь вот буду делать ограничение на вывод количества снимков и листалку без перезагрузки страницы, как галерея в общем.:victory:

laimas 18.02.2016 17:53

Цитата:

Сообщение от AciDWarrioR
читаю, как будто первоклассник квантовую механику

А с этим то какие проблемы, это ведь вытекает из условия. Так проще будет, дано условие - проверять почтовый ящик по понедельникам и вторникам, и если в нем будет пять писем, то написать ответы. Что разумнее:

1) проверять количество писем только в понедельник и вторник?
2) проверять письма каждый день недели и только потом узнать какой день недели, чтобы принять решение нужно ли отвечать?

А раз в случае ячеек таблицы иное условие?

На фото объединение ячеек в колонке (первой), а это несколько иное нежели colspan. А ячейки по размерам файлов так вообще нечто непонятное. )


Часовой пояс GMT +3, время: 06:59.