Jon_st, в одном AJAX-запросе ты можешь несколько раз написать `deferred.done(function() ...`, но не можешь несколько раз написать `success: function(). ..`
FingerprintJS нормально работает на айфонах. Проблема в том, что айфоны дают очень мало энтропии, поэтому из них невозможно получить очень индивидуальный фингерпринт. FingerprintJS Pro (платная версия) использует разные клиент-серверные трюки, благодаря чему удаётся идентифицировать каждый отдельный айфон.
В моей практике встречалось только такое. Просто Trick имеет положительный окрас. Можно добавить впереди слово Dirty, чтобы подчеркнуть костыльность решения.
Rainbow888, в документации теперь написано, что метод group.getInfo требует сессию для внешних приложений, а метод group.getMembers требует сессию всегда. Я не буду пробовать его. Я просто добавляю access_token в запрос (его можно получить в настройках приложения).
jQuery прекрасно находит элементы с `display: none;`. Вопрос должен звучать как «Как с помощью jQuery выбрать элемент, которого нет в начале, но появляется позже?».
Modernirz + передача параметров в Яндекс.Метрику — выглядит интересно. Теоретически, полученные так данные о поддержке браузерами технологий будут более точными, чем данные из Can I use.
Жаль только, что информацию о поддержке ещё одной технологии можно получить не сразу, а через некоторое время после внедрения соответствующего JS на сайт.
sadboy, какой ответ возвращает Facebook (переменная $data)? Возможно, в качестве page id вы указали идентификатор не страницы, а группы или чего-то ещё. Получать количество членов группы нужно по-другому.
ИМХО, PHP в качестве шаблонизатора не очень удобен. Например, в нём не хватает наследования шаблонов, удобной передачи параметров в компоненты (подшаблоны), ипростого экранирования значений.
Вы предлагаете каждый сайт разворачивать в своём Docker-контейнере? Или сделать один контейнер для всего набора сайтов на одном сервере, чтобы можно было быстро и просто подключать новые VPS/VDS к набору серверов и обслуживать серверы?