Вход • Регистрация

Ajax

  • 19 июля 2016 г. , редакция: 19 июля 2016 г.
  • Добрый день!
    На товары навешаны события, после того как я нажимаю поиск по фильтру, у меня все события слетают, попробовал файл js засунуть в файл вывода товаров, все стало работать, но только 1 раз, как только я убираю фильтр, события уходят.
    • 19 июля 2016 г. , редакция: 19 июля 2016 г.
    • Интересно. Вы говорите о js, о событиях для dom, но не незадумываетесь почему привязка событий слетает. Если вникните в причину, то ответ тут же появится сам. Даю наводку: поиск скорее всего работает через ajax. Теперь правильные вопросы:
      1. что делает ajax?
      2. к чему поивязываются события?
      3. как увязать результаты ajax с событиями?
      Думаю минут пять потратите и все станит понятно для Вас.
      Успехов.
      • 19 июля 2016 г. , редакция: 19 июля 2016 г.
      • Они слетают потому что что dom меняется, т.к. подгружаются новые данные, а js уже загружен и не может применить на новые объекты, т.к. он их не видит, может не так пишу, но ход мыслей точно верный)
        Я знаю что нужно чтобы при подгрузке товаров, следом исполнялся код, и я сделал это, загрузив код в файл shop.buy_form.js, т.к. знаю что этот файл каждый раз подгружается заново, при поиске через фильтр. Понял это исходя из того что события навешаны на кнопки в корзину и купить в один клик.
        Мне нужно только понять как мне грузить мой файл заново, потому что в ajax я пока еще не силен.

        P.S прочитал про функцию ".on()", возможно стоит задуматься о нем, но есть скрипт который реализован по другому, это фоторама, с ней тогда мне как быть

        P.P.S Проблему с моим кодом решил с помощью $(document).on('click', '..', function(){...}, буду думать что делать с фоторамой;)
        • 19 июля 2016 г.
        • Степан, из того, что Вы написали, самое рациональное - это использование привязки событий через on. Он в том числе и для этого был задуман. Другие варианты также возможны, но в данной ситуации избыточны.
          Решать Вам. Правда у всех своя. Успехов.
  • 19 июля 2016 г. , редакция: 19 июля 2016 г.
  • Цитата
    Это можно решить скорей всего положив мой код в файл shop.buy_form.js, но у меня мой код в отдельном файле, и не хотелось бы его разделять

    _____________________________________________
    Слова подтвердились

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум