Задать вопрос
  • Как запустить javascript код в html документе?

    @mr-molodoy
    Что у Вас в game.js?
    Подключите его к странице в тег <head></head>
    Что бы получилось, что-то вроде:
    <head>
        <script src = "/javascript/game.js" type = "javascript" />
    </head>


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

    function gameHandler() {
            // Код внутри функции
        }


    Далее, на странице имеем, как Вы выразились "блок", допустим такой:

    <div id = "block">
        ...
    </div>


    В таком случае нам нужно написать след. JavaScript (на самой странице):
    $('#block').on('click', gameHandler); // где gameHandler и есть название нашей функции из файла game.js


    Опираясь на ответ, думаю Вы разберетесь.
    Ответ написан
    Комментировать
  • Как сделать 3 блока одинаковой высоты?

    @mr-molodoy
    Если можно пренебречь старыми браузерами, Вы легко сможете организовать это с помощью flexbox.
    Ответ написан
    Комментировать
  • Как превратить строку в число?

    @mr-molodoy
    Немного измените структуру шаблона.
    Приблизительно вот так:
    <div class="priceOne">
         цена за 1 мес. - <span>25</span>
    </div>

    и javascipt соответственно:
    var priceMessage  = document.getElementsByClassName("priceOne")[0];
    var priceRaw         = priceMessage.queySelector('span').innerHTML;
    var price                = parseInt(priceRaw);
    Ответ написан
    Комментировать
  • Как скачивать изображения с других сайтов?

    @mr-molodoy
    под "на клиенте" Вы подразумеваете браузер?

    Вроде бы как политика безопасности браузеров на сегодняшний день не позволит даже сделать кроссдоменный запрос и получить изображения, без специального заголовка со стороны сервера который Вы собираетесь "ограбить". Если я не ошибаюсь.

    Можно по след. схеме:
    Клиент <- Ваш сайта -> Сайт "жертва".

    Т.е:
    $.post('/getImages.php', {
         url: 'http://site.com/images/image.jpg'
    }, function (data) {
        // Сохраняем изображения
        // Правда признаюсь - это извращение ;)
    }, 'JSON');


    <?php
         $url = $_POST['url'];
         $filename = end('/', $url);
         $path = __DIR__ . '/images_cache/';
    
         file_put_contents($path . $filename, file_get_contents($url));
    
         json_encode([
              'image' => '/images_cache/' . $filename,
              'filename' => $filename
         ]);
    Ответ написан
    7 комментариев
  • Как писать программы на python?

    @mr-molodoy
    Видимо Вы просто не знаете, что Вы хотите реализовать, нет конкретной цели.
    Что бы понять что Вам нужно писать, перед началом.
    Продумайте концепт.
    Создайте тех задание (для себя, что бы не упустить мелочей при реализации архитектуры).
    Опишите бизнес логику приложения. Можно на листочки бумаги и блок схемой (без деталей, только бизнес логику состоящую из абстрактных компонентов), если какой-то из блоков Вы тоже сомневаетесь как реализовать - разбивайте и его на блок схему из более низкоуровневых (детальных) компонентов и так до тех пор пока Вам точно не станет ясен алгоритм работы Вашего приложения.
    После этого пишите, просто пишите.
    Желательно что бы у Вас были зарисовки с бизнес логикой приложения на руках и второй монитор с открытой документацией по новому языку который Вы осваиваете.
    Вы четко будете понимать что Вам нужно сделать и сможете быстро найти нужную информацию.
    Начинайте писать либо с верхней части вашего дерева / иерархии бизнес логики и идите в низ.
    Или начните с отдельных, наиболее простых веток схемы и реализуйте сначала их, после объединяйте все компоненты в целостную систему.
    Ответ написан
    Комментировать
  • Timeout ajax запроса?

    @mr-molodoy
    Можно кучей способов.

    1. Убрать обработчик с события click
      var $button = $("button#send-ajax");
      function clickHandler () {
          // Отправка Ajax
          // ...
      
          // Отключаем обработку события клика
          $button.off('click'); 
      
          // Включаем через 3 секунды
          setTimeOut(function () { $button.on('click', clickHandler); }, 3000);
      }
      
      // Включаем обработчик события
      $button.on('click', clickHandler)


    2. При нажатии проверяем переменную времени последнего клика, если времени прошло более 3-5 сек. выполняем запрос и обновляем время в переменной.
    3. По аналогии с первым примером, только спрятать кнопку на время вместо удаления обработчика
    Ответ написан
    Комментировать
  • Где заказать нарезку картинок для слайдшоу?

    @mr-molodoy
    Если картинки есть и нужно просто обрезать - обращайтесь. Помогу бесплатно.
    Ответ написан
  • В чем вы создаете php/tpl/html шаблоны?

    @mr-molodoy
    У Вас php занимается компиляцией jade?
    Если я правильно понимаю то Вы хотите сделать что-то вроде?
    doctype html
    html
      head
        style
          include style.css
      body
        <?php if (isHome() == 'index') { ?>
            h1 Index page
        <?php } else { ?>
            h1 <?= $page->title ?>
        <?php } ?>
        p Welcome to my super lame site.
        script
          include script.js


    Если я правильно понял, то - почитайте может ли библиотека, которую Вы используете в php для компиляции Jade принимать не путь к шаблону для рендеринга а контент, если да то делайте примерно так:
    function renderJade($file) {
             $jadeCompiler = new Jade\Compiler;
    
             ob_start();
             include $file; // здесь Jade шаблон
             $jadeContent = ob_get_contents();
    
             $template = $jadeCompiler->compileContent($jadeContent);
             
             return $template;
         }
    
         print renderJade("path/to/jade/template.php" );


    Конечно, что у библиотеки используемой Вами отличается способ инициализации и названия методов, но
    Ответ написан
  • Какой язык программирование подойдёт для использования web-камеры?

    @mr-molodoy
    JavaScript.
    Смотрите в сторону WebRTC.
    Не совсем ясно, что Вы подразумеваете под "С последующим применением php". Если нужна не только трансляция и работа с web камерой, но и ее сохранение на сервер с помощью php - то это так же возможно, но лично не готовил.
    Если самому с этим (наверняка муторным) процессом возится не охота то посмотрите еще сюда:
    https://github.com/muaz-khan/WebRTC-Experiment/tre...
    Ответ написан
    Комментировать
  • Как упаковать в html-файл: картинки, css и js?

    @mr-molodoy
    Доброго времени суток.
    Например стили можно не подключать а разместить в тег
    <style>
    JavaScript разместить в тег
    <script>

    Изображения в качестве фона в css можно установить след. образом:
    background-image: url(data:image/gif;base64,{{base64_content}});


    Изображения на странице можно поместить так же
    <img src="data:image/gif;base64,{{base64_content}}" alt="" />


    Шрифты в css:
    @font-face {
        font-family: 'FontName';
        src: url(data:font/truetype;charset=utf-8;base64,{{base64_content}}) format('truetype'),
             url(data:font/woff;charset=utf-8;base64,{{base64_content}}) format('woff');
    }


    Где {{base64_content}} - это картинка закодированная в base64.
    Закодировать можно здесь b64.io
    Ответ написан
    Комментировать
  • Из чего сделан сайт Sony(http://www.sony.com/be-moved/)?

    @mr-molodoy
    Если говорить непосредственно про реализацию на этом сайте, то здесь можно увидеть анимацию canvas элемент растянутый на размер окна в котором прокручиваются кадры из анимации привязанные к scroll и управляемые через javascript.

    Если разбить весь процесс по этапам, то получим следующее:
    1. Продумать концепт.
    2. Создать наброски отдельных элементов.
    3. Смоделировать отдельные элементы по эскизам в любом 3D редакторе.
    4. Скомпоновать сцену, проработать освещение.
    5. Создать анимацию.
    6. Экспортировать в видео и разбить по кадрам либо экспортировать сцену сразу набором изображений.
    7. Оптимизировать изображения (скорее всего изображения будут обрезаться с сохранением только части изображения которое анимируется при этом статические элементы (которые на протяжении определенного времени не изменяются будут подложены как отдельное изображение на заднем)). Т.е в конечном итоге у нас получится на выходе независимых 3-4 слоя с изображениями, которые размещены на холсте друг под другом и с идеально подобранными позициями, что бы в целом картинка смотрелась целостно. Самый сложный, на мой взгляд, этап, которым можно пренебречь в прототипах и случаях когда анимация не очень долгая.
    8. На javascript пишется специальный "движек" для позиционирования слоев, подготовленных на пред. этапе и размещения на холсте (элемент canvas на странице).
    9. Пишется обработчик для события scroll в браузере, отслеживающий положение view порта относительно высоты страницы.
    10. Пишется контроллер инициализирующий обработчик события и передающий параметры прокрутки в "движек" для рендеринга нужного кадра на холсте основываясь на положение viewport'а (скролла).
    11. Помимо этого так же подготавливается css анимация для появления некоторых элементов на странице, таких как текст.
    12. кадры из CSS анимации подгоняют под кадры основной анимации внутри canvas, что бы она проходила синхронно и так же управление воспроизведением css анимацией включается в контроллер обрабатывающий анимацию в canvas.
    13. СSS анимация подключается к страницы поверх Canvas элеменета.
    14. Утверждаем работу с заказчиком.
    15. Получаем деньги и незабываем выдать зарплату всем трудящимся.
    Ответ написан
    1 комментарий
  • Стоит ли хранить массив в бд?

    @mr-molodoy
    Какую базу данных Вы используете?
    Если структура данных не реляционная в проекте посмотрите в сторону mongodb.
    MongoDB является документ-ориентированной базой данных, формат каждого документа коллекции представляет из себя расширенную спецификацию JSON.
    Использование такого решения позволит Вам:
    1. Не заморачиваться с сериализацией / десериализацией данных.
    2. Предоставит возможность удобным способом получить, например, все записи у которых в массиве имеется или отсутствует та или иная ссылка.
    3. Позволяет хранить структуру данных любой вложенности массивов и простой выборки из нее, а так же удобно производить обновление данных в коллекции.
    4. Каждый документ строго не привязан к структуре к структуре коллекции, как, например, в реляционных бд, таких как MySQL (все строки обладают одинаковым набором данных (т.е нет возможности в одной таблице хранить некоторые записи с одним набором полей, а во второй с другим)). Может быть как плюсом так и минусом, все зависит от конкретных требований к архитектуре и непосредственно хранимых данных.
    Ответ написан
    2 комментария
  • Как реализовать медиазапрос на js?

    @mr-molodoy
    Не совсем ясно, что Вы имеете ввиду. Для чего Вам использовать цикл? Если Вы будете в цикле при каждой итерации проверять размер какого либо блока и плюс еще производить те или иные расчеты и / или манипуляции основываясь на этих данных, то готовьтесь к адским мучениям с производительностью.
    Как Вы сами же и упомянули в javascript имеется событие на изменение размера окна браузера. В jQuery к нему можно обратится как:
    $(window).resize(function () {
        console.log( $( window ).width() ); // Запишем в консоль новый размер
    });

    или
    $(window).on('resize', function () {
        console.log( $( window ).width() ); // Запишем в консоль новый размер
    });


    Вот Вам для примера набросал код на jsfiddle который демонстрирует всю работу.
    Красный квадрат должен изменять свой цвет на зеленый если размер окна Вы измените на 620, либо меньше пикселей в ширину и при этом поменяет свой цвет обратно, если вы увеличите ширину окна.

    Код: https://jsfiddle.net/cxnesxej/2/
    Результат в отдельном окне: https://jsfiddle.net/cxnesxej/2/embedded/result/
    Ответ написан
    3 комментария
  • Почему не загружается картинка по URL с помощью Curl?

    @mr-molodoy
    Причин может быть несколько.
    1. Проверка Referrer, на загрузку только со страниц сайта.
    2. Подстраховка, проверка на "настоящий" User Agent браузера.
    3. Устанавливается cookie со специальным ключом привязанным к сессии пользователя, устанавливаемый на страницах сайта и проверяемый при получении статического контента. (Маловероятный вариант).
    Ответ написан
  • Зачем использовать isset&&!empty для инпута?

    @mr-molodoy
    Думаю, Вы правы если есть задача проверить, что та или иная переменная не пуста достаточно использовать
    (!empty ($var))
    Различия же между этими двумя функциями достаточно просты для понимания через isset мы можем проверить существует ли переменная (т.е объявлена ли она) при этом она может быть и пустой.
    А empty же в свою очередь проверяет переменную на заполненость. При этом переменная не обязательно должна существовать, тогда как и в случае с пустой переменной данная функция вернет true.
    Ответ написан
    Комментировать
  • Как сделать из css файла - конфетку?

    @mr-molodoy
    Порядок Вы должны соблюдать сами.
    Вам в этом немножко могут помочь css препроцессоры.
    Различные утилиты, максимум, что смогу сделать - помочь Вам причесать Ваш css, например, в блоке отсортировать свойства по алфавиту, но правильно он Вам не переорганизует Ваш код, к сожалению.
    Ответ написан
    Комментировать
  • Цикл в PHP с двумя if?

    @mr-molodoy
    if ($oid==79) {
              printf('<li><a href="http://2013.ru">%s</a></li>', $title);	
    } else if ($oid==84) {
              printf('%s', $title);
    } else {
              printf('<li><a href="/dir/%s">%s</a></li>', $oid, $title);
    }
    Ответ написан
    Комментировать