2017-01-15 5 views
1

Функция ниже возвращает объект объекта вместо html/text в элементе, только при первом щелчке. Каждый последующий щелчок возвращает текст элемента. Я пробовал использовать .html и .text - это не работает. Проблема заключается в том, что я добавляю функцию onclick, потому что, если я удалю onclick и просто использую $("#id").html() без функции щелчка, она работает.Функция jQuery возвращает [объект Object] только при первом нажатии

+ $('.education-modal-link').on('click', function(e) { 

    e.preventDefault(); 

    var modalCaptionTextCall = $(this).prev('div').html(); 

    $('div.modal-caption').eq(0).html(modalCaptionTextCall); 
    }) 

Что я делаю неправильно?

см. Проблему по этой ссылке: http://johnhoich.com/homepage Прокрутите вниз до раздела образования и нажмите на карту содержания образования.

+0

Я только угадываю, так как информации недостаточно, но похоже, что он связан с 'featherlight' lib, который используется в качестве первого« щелчка »по ссылке, создает модальный элемент DOM - в этом случае только один Вызывается событие 'click'. И после этого начального события 'click', которое вызывается при нажатии на ссылку, вы получаете цепочку событий' click', вы можете проверить это в отладчике Chrome Dev Tools. –

+0

Я думаю, что вы правы - как я могу это исправить? – Mike

+0

@IgnacyKasperowicz Как я должен это исправить? – Mike

ответ

0

Проблема заключалась в том, что событие click было за пределами события первого щелчка, поэтому [object] не вызывался при первом щелчке, но все равно вызывался на каждом щелчке после этого.

Мне нужно было найти событие click в чудовищном JS-файле и добавить функцию внутри него.

Смежные вопросы