Eng_ru, redis - это хранилище для быстрого доступа. Не обязательно, можно и средствами языка создавать массивы/объекты, которые так же будут жить в оперативной памяти, а без прокладки в виде редиски, можно ещё быстрее к ним доступ иметь.
В целом, для таких задач нужно использовать наиболее быстрые решения и работу в цикле requestAnimationFrame сводить к минимуму, кешируя всё, что можно закешировать.
WeDeYoSi, Почему сразу проще? Мы же не сделали заключения по какой причине он плох. Я лишь через слэши накидал пару возможных вариантов. Может он плох, так как он неэффективен, не производителен, тратит зазря ресурсы. Вы предлагаете гадать на кофейной гуще: любит/не любит, придёт/не придёт. Вы даёте абстракцию, в ответ также получаете абстракцию, так это работает.
Такого не бывает. Если есть мнение, что код плохой, значит этому есть обоснование, почему он плохой, не с потолка же вы это берёте. Значит нужно проще/понятнее/надежнее/эффективнее и и.п.
MamaLuyba, Откуда вы вообще взяли, что речь идёт о for in цикле? Где об это сказано в вопросе? Там явно речь о классическом цикле и я говорю о нём. Когда итерируют объект понятно, что там используют что-то более осмысленное.
Это локальные переменные внутри цикла, предназначенные для инкрементирования. В них невозможно запутаться. Все и всегда так писали. С чего вдруг это стало проблемой? Любопытно, как вы ласково именуете инкремент?
Денис Колесников, смотреть в документацию - это нормально. Держать всё в голове невозможно и не нужно. Не парьтесь, берите и исполняйте заказ, раз уверенность есть.
Максим Виксна, В таком родителе должно быть что-то не с позишн absolute, что будет задавать ему высоту контента, то есть контент какой-то нужен, будь-то картинка или текст. Иначе скриптом задавать ему размеры.
Шохрух Шаймардонов, не-а, у него родитель с position:relative, он относительно него позиционируется, так что он не ушёл от родителей, просто родители его не замечают.
lamer350, когда я пробовал в прошлый раз, оно вообще никак не работало: айфон видился, но в инспекторе тишина была, тогда я взял в руки айфон с iOS 10 и всё сразу заработало)
В целом, для таких задач нужно использовать наиболее быстрые решения и работу в цикле requestAnimationFrame сводить к минимуму, кешируя всё, что можно закешировать.