Я пытаюсь применить библиотеку текстового редактора jQuery к тегу P, который заполняется вызовом Ajax внутри модального. Это часть несколько старого и Ajax тяжелого сайта с большим количеством различных версий JQuery быть загружены, но работаютБиблиотека jQuery «не функция» при вызове в событии click
$.fn.jQuery
в консоли JS в любой точке возвращается «2.1.4».
Я знаю, что библиотеки загружаются на страницу, так как применение «.jqte()» к существующему/«статическому» элементу на странице преобразует его по назначению. Это до того, как модальный загружается/отображается в потоке программы.
$(document).ready(function(){
$(".odd").jqte();
});
Вышеприведенный фрагмент превращает все элементы «.odd» в небольшие текстовые редакторы.
$("#showScraper").click(function(){
$(".editor").jqte();
});
Вышеупомянутое то, что вызывает у меня боль.
Я с трудом рассуждая, почему ошибка
Uncaught TypeError: $(...).jqte is not a function
появляется только тогда, когда
$(".myClass").anyLibrary();
называется в моем случае щелчка. Это также относится к идентификаторам.
Любая идея, что может вызвать это? Конфликт версии jQuery? This question seems similar, and suggests that it could be a version conflict
Возможно ли, что каким-то образом импорт html не будет прочитан, когда вызов Ajax будет выполнен? Или я не понимаю рамки?
Любая помощь очень ценится!
Некоторый код:
PHP генерации HTML и содержание быть размещены внутри модального:
echo '<div id="scrapedText"><p class="editor" name="text1">';
foreach ($matchContent['about']['p'] as $key => $value) {
echo $value , "<br /><br />";
}
echo '</p></div><br/>';
Ссылка, которая открывает модальное:
$button = '<p><a href="/my/ajax/path" id="showScraper" rel="modal:open">Show me the stuff</a></p>';
Мой импорт:
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script>
<link rel="stylesheet" type="text/css" href="/css/jquery.modal.css" />
<script type="text/javascript" src="/scripts/jquery.modal.js"></script>
<link rel="stylesheet" type="text/css" href="/static/jQuery-TE_v.1.4.0/jquery-te-1.4.0.css" />
<script type="text/javascript" src="/static/jQuery-TE_v.1.4.0/jquery-te-1.4.0.min.js"></script>
* "jQuery версия конфликта?" * Да. Вы загружаете плагин для одного экземпляра jQuery, но не для других (и), а не для версии, используемой кодом, который терпит неудачу. Я не вижу, как это не дубликат того, с которым вы связаны. –
* «Это часть несколько старого и тяжелого сайта Ajax с множеством различных загружаемых jQuery версий ...» * Остановите то, что вы делаете, и * исправьте это *. Загрузите одну копию jQuery. Загрузка нескольких копий раздувает вашу страницу, увеличивает время загрузки и приводит к стычкам, подобным тем, с которыми вы работаете. –
@ T.J.Crowder Очистка - это то, что мне интересно делать. Не могли бы вы немного рассказать о своем первом комментарии? Я чувствую, что мне не хватает этой цели:/ – Kyrre