18.02.2016, 12:04
|
|
Кандидат Javascript-наук
|
|
Регистрация: 11.11.2015
Сообщений: 136
|
|
Сообщение от laimas
|
Теперь понятно для чего?
|
Я понял, что для строк, но почему именно три, это для меня загадка.
Я для строк ввел переменную count = 0, в зависимости чему она равна (0, 1, 2, 3), Выполняется свои изменения для строки, если count = 4, обнулить. Так как одна запись из БД занимает 4 строки. Вот как то так.
Последний раз редактировалось AciDWarrioR, 18.02.2016 в 12:11.
|
|
18.02.2016, 12:17
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,129
|
|
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);
}
|
|
18.02.2016, 12:36
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
!( (n-1) % 4)) - а какая хрен разница?
|
|
18.02.2016, 12:55
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,129
|
|
Сообщение от laimas
|
а какая хрен разница?
|
интересны разные варианты
|
|
18.02.2016, 13:01
|
|
Кандидат Javascript-наук
|
|
Регистрация: 11.11.2015
Сообщений: 136
|
|
При условии, что строки не идентичны вот такой вариант:
if(R.cells.length == cell) {
if (count == 4){
....
count = 0;
}
if(count == 0){
count++;
....
}
} else if(count == 1){
count++;
....
}
и т.д.
|
|
18.02.2016, 16:13
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от рони
|
интересны разные варианты
|
Так разве кто спорит
|
|
18.02.2016, 16:28
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от 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 в 16:42.
|
|
18.02.2016, 17:02
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от AciDWarrioR
|
Так как одна запись из БД занимает 4 строки. Вот как то так.
|
Вот это уже перл, если только не своеобразное мышление. ) В базе не может быть записей, которые занимают N строк html-таблицы. В базе может быть N идентичных значений, которые можно вывести единожды, объединив ячейки колонки таблицы. Именно так, так как объединить можно только ячейки, строки таблицы объединить нельзя. А N идентичных записей, которые нужно поместить, в одной строке таблицы.... даже трудно и представить записи в SQL таблице "в ширину". Здесь скорее речь о родителях -> потомках идет?
И, если таблицу строить на сервере, то это меньше крови будет.
Последний раз редактировалось laimas, 18.02.2016 в 17:08.
|
|
18.02.2016, 17:16
|
|
Кандидат Javascript-наук
|
|
Регистрация: 11.11.2015
Сообщений: 136
|
|
Сообщение от 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 строки таблицы. Вот погляди как это выглядит сейчас)
Теперь вот буду делать ограничение на вывод количества снимков и листалку без перезагрузки страницы, как галерея в общем.
|
|
18.02.2016, 17:53
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от AciDWarrioR
|
читаю, как будто первоклассник квантовую механику
|
А с этим то какие проблемы, это ведь вытекает из условия. Так проще будет, дано условие - проверять почтовый ящик по понедельникам и вторникам, и если в нем будет пять писем, то написать ответы. Что разумнее:
1) проверять количество писем только в понедельник и вторник?
2) проверять письма каждый день недели и только потом узнать какой день недели, чтобы принять решение нужно ли отвечать?
А раз в случае ячеек таблицы иное условие?
На фото объединение ячеек в колонке (первой), а это несколько иное нежели colspan. А ячейки по размерам файлов так вообще нечто непонятное. )
|
|
|
|