2

TL;DR: bokeh.js を使用した jQuery の index.html 宣言は、php ページのスクリプト タグが読み込まれるはずの div に自分自身を明示する機能を妨げます。なんで?

graph.create_html_snippet()python bokeh パッケージからの出力を埋め込もうとしています。テストページが機能することを発見したとき、SOに投稿するためだけに別のテストhtmlページを作成するのに非常に苦労していました。ここにあります:

<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 に干渉するのはなぜですか? jQuery で宣言された html ページを使用して php ページをロードすると、php がロードされた html 要素にはスクリプト タグがロードされませんが、他のすべての php コマンドは問題ありません。どうしたんだ?これを書いている間に質問を解決したので、私の質問は、同じことに遭遇する可能性のある人々の好奇心/助けから外れていると思います.phpを使用してボケを埋め込むことは、そのための最良のアプリケーションの1つです.

助けてくれてありがとう。

4

1 に答える 1

2

これは最近発見された問題で、次の場所で進行状況を追跡できます。

https://github.com/ContinuumIO/bokeh/issues/554

これに対する修正を含むポイント リリースがまもなく提供されるはずです。

于 2014-04-25T19:33:53.730 に答える