2016-03-28 11 views
0

現在、d3.jsを使用してグラフアプリケーションを作成しています。 D3-強制有向グラフへのリンクを以下に示します。 https://bl.ocks.org/mbostock/4062045 私の好きなノードのためのオンクリックイベントを作成する場合:javacriptを使用してHTMLの出力ウィンドウにコンソールメッセージを出力する

node.on("click", function(d){ 
      console.log(d.id); 
         }); 

これも開発者ツールのコンソール内のノードの名前を印刷しますブラウザのしかし、私はこの値を取ってノードをクリックして印刷するhtmlページ(ウィジェット)でウィンドウを作成する必要があります。

htmlウィンドウウィジェット(別のdivのみ)でコンソール出力を印刷する方法はありますか?

P.S.同様の質問があります:TextAreaを使用して出力コンソールを作成する方法は?しかし、答えはしきい値を決めるためのものであり、それを作成する方法ではありません。

ヘルプありがとうございます。

+0

'$( '#somediv')。基本的にconsole.log()の代わりにappend( '

' + d.id + '

'); –

答えて

0

あなたのスクリプトの上部にconsole.log = customLogFunc;と書くことができます。

0

JavaScriptを使用して新しいウィンドウを開くようにしてください。

var myWindow = window.open("", "MsgWindow", "width=200, height=100"); 
myWindow.document.write(d.id); 
+0

私はあなたが言うことを得ようとしています。しかし、私はd3グラフのイベントを印刷する通常のコンソールと同様に、アプリケーションのようなコンソールを作成したい。私はHTMLで対話を使用しようとしましたが、寸法と外観があまりにも悪く、後で変更できるかもしれませんが、より良い方法がありますか? – Omkar

+0

@Omkar - このようなjsプラグインを試してみることができます - http://www.dynamicdrive.com/dynamicindex8/dhtmlwindow/ – koolhuman

0


あなたはJavaScriptで使用することができ、直接ページを変更したい場合は、次に続いて、あなたが

here上で見ることができます

document.getElementById(); 

を、異なるセレクタがたくさんありますあなたはこのようにしなければならないHTMLを変更してください:

document.getElementById("example").innerHTML = "test"; 

PS:あなたはjqueryのを使用する場合は、同じことを行うには、たとえば次のように$関数を使用することができます。

$("#example").html("test"); 

#はIDを意味しますので、CSSセレクタを使用しています。

+0

ありがとうColas、これは私を助けました! – Omkar

0

同様lynkoはあなたにconsole.logを上書きすることができ、言った:

console.log = function (message) { 
    //prettify message here 
    $("#console_out_div").append("<p>" + message + "</p>"); 
}; 

console.log("test123"); 
console.log([1,3,4]); 
console.log({a:"test", b: 2}); 

あなただけinstanceoftypeof変数messageをチェックして、出力を飾り立てるしなければなりません。このようなものfiddle

関連する問題