JQuery мешает bokeh.js. Зачем?
TL;DR: мое index.html объявление jQuery с bokeh.js мешает тегам сценария на странице php проявить себя в div, в который они должны быть загружены. Зачем?
Я пытался вставить вывод graph.create_html_snippet()
из пакета питон боке. У меня было так много проблем, что я создал отдельную тестовую HTML-страницу, чтобы опубликовать ее в SO, когда обнаружил, что моя тестовая страница работает! Вот:
<html>
<head>
<script src="js/bokeh.js"></script>
<script>
$(document).ready(function() {
$("#get_graph").click(function() {
$("#show_graph").load('hello.php');
});
});
</script>
</head>
<body>
<!-- click this to bring up graph -->
<a href="#"><div id="get_graph" style="width:100px;height:30px;background-color:#ddd;">Show graph</div></a>
<div id="show_graph"></div>
</body>
</html>
И hello.php здесь:
<?php
echo 'hello';
?>
<script src="31b1ad52-e095-4ba1-89d0-69f0b898d677.embed.js" bokeh_plottype="embeddata" bokeh_modelid="31b1ad52-e095-4ba1-89d0-69f0b898d677" bokeh_modeltype="Plot" async="true"></script>
Так что теперь, столкнувшись с загадкой, почему это не сработает на моей реальной странице (не для краткости опубликовано) и почему это сработает на моей тестовой странице, я начал разбираться с вещами до тех пор, пока не добавлю это в голову моя тестовая страница:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script>
И тогда все перестало работать. Но потом я понял, подожди минутку, как моя оригинальная тестовая страница работала в jQuery, если я не дал сценарий для jQuery в моем <head>
? Я вернулся на свою главную страницу и удалил скрипт JQuery, и внезапно вложение сработало нормально. Поэтому я вошел в скрипт bokeh.js и нашел несколько вызовов jQuery, которые я не совсем понимаю.
Почему мое объявление о jQuery мешает bokeh.js? Когда я загружаю страницу php, используя объявленную hQml-страницу jQuery, в элемент html, в который был загружен php, не будут загружены теги сценария, но все остальные команды php в порядке. В чем дело? Поскольку я решил этот вопрос во время написания этой статьи, я думаю, что мой вопрос скорее из любопытства / помощи людей, которые могут столкнуться с тем же, поскольку встраивание bokeh с использованием php - одно из лучших приложений для него.
Спасибо за любую помощь.
1 ответ
Это недавно обнаруженная проблема, вы можете отслеживать прогресс на:
https://github.com/ContinuumIO/bokeh/issues/554
Должен быть точный выпуск, который включает исправление для этого очень скоро.