• Modx Revo 2.4.2. Как вставить значение любого ТВ в сниппет?

    @zm_llill
    php-developer
    Василий Наумкин сделал отличный сниппет pdoField, он входит в состав расширения pdoTools. Работает очень быстро и удобно.
    Ответ написан
    Комментировать
  • Почасовая оплата за дизайн, как считаете?

    @sarathorn
    php программист, веб-дизайнер, коллекционер
    Дизайн - одно из моих направлений. Оплату беру за задание, предварительно оговариваю количество правок и их сложность: сменить бледно-розовый на нежно-розовый или поставить другой шрифт с Google Fonts - штуки 3-4 такие поправки делаю безвозмездно. Если просят более сложную переделку, то уже за деньги, но опять же беру не за час, а за факт выполнения. Мне самому неудобно работать по времени. Есть задачи простые, а есть задачи сложные. Приходится работать по аналогии с облачным хостингом: 100% мозгового времени - А руб/час, 100% работы руками - Б руб/час, нежелание делать эту работу - В руб/час... И из всего этого складывать длинную и сложную формулу... Проще прикинуть покроет ли, допустим, 1000 рублей мои затраты и удовлетворит ли эта тысяча моё самолюбие. Вот, например, за выкладывание готовых материалов на сайт я бы попросил около 500р/час, а за программирование - от 2000р/час. Опять же, как я уже сказал, я оценю сложность задачи и прикину время,заказчик будет платить исключительно за результат, даже если я затрачу не час, а три - мой косяк.
    Ответ написан
    2 комментария
  • Почему не работает javascript после ajax получения ответа?

    antonio1107
    @antonio1107
    Заместитель руководителя
    Решено! JQuery обработчики, такие как hover(), click(), bind(), on() и т.д. обрабатывают элементы только при загрузке.
    Чтобы они реагировали на подгруженный ajax'ом контент, есть несколько решений:
    1. Загрузить ajax'ом скрипт заново(не лучший вариант). Но работает.
    2. Использовать обработчик live(). Но с версии >= JQuery 1.9 его убрали и перенесли в обработчик on(), в котором объединили и bind(), и delegate().
    3. На мой взгляд, самый лучший. Для тега установить атрибут onClick, установить ему значение функции, например:
      а в скрипте переделать обработчики в функцию.
      Вместо:
      $("div").click(function(){
      //что-то делает
      });
      
      //переделать на:
      function function_name(){
      //что-то делает
      }

      Т.е. у тэга div при нажатии атрибут onClick вызывает эту функции. И тут без разницы, подгружен контент ajax'ом или нет.
      Если хотите в функции использовать значение $(this), то задайте в атрибуте у функции onClick="function_name(this);", а в скрипте в функции задайте событие для этого значения
      function function_name(i){
      $(i).вешаем обработчики
      //$(i) это тоже, что и $(this) у обработчика $("div").click()
      }



    Надеюсь, кому-то будет полезно :)
    Ответ написан
    3 комментария
  • CMS с простым шаблонизатором

    Sanes
    @Sanes
    MODX
    Ответ написан
    Комментировать