私は、単純なCSSクラスを使用してmouseoverでサイズを変更する動的に作成されたdivでページを作成しています。私はそれを使用して、ページがロードされたときにこれらのdivが小さくなり、ユーザーがマウスをより近く見たいと望む場合に使用します。divでプロットできる応答グラフ
CSSは基本的に私はこの中でPlotly.jsで作成するプロットは、ユーザーがマウスオーバーとして自動的にサイズを変更DIV作るしようとしています。この
.resize {
width: 400px;
height: 300px;
transition: all 1s;
}
.resize:hover {
width: 800px;
height: 600px;
}
のように見えます。私はこの仕事をするために何をする必要があるかわからないんだけど、どこ
JSコード
function doGraph(){
for(index = 0; index < divArr.length; ++index){
(function() {
var d3 = Plotly.d3;
var gd3 = d3.select("div[id='"+divArr[index]+"']");
//.append('div')
//.style({
// width: "95%", "margin-left": "2.5%",
// height: "95%", "margin-top": "2.5%"
//});
var gd = gd3.node();
Plotly.newPlot(gd, [{
mode:'lines',
x: xArr[index],
y: yArr[index], }],
layout , {scrollZoom:true,modeBarButtonsToRemove:['sendDataToCloud'],showLink:false,displaylogo:false});
//gd.onresize = function() {
// Plotly.Plots.resize(gd);
//};
window.addEventListener('resize', function() { Plotly.Plots.relayout(gd); });
})();
}
}
コメントアウトコードが表示されます。今まで私がやったことはすべて何ももたらさなかった。
ユーザーが生成したtxtファイルに基づいて、ページ上のすべてがc#コードビヘイビアで動的に作成されます。
関連性が高いと思われるq/aが見つかりましたが、正直言って私のコードにどのように適用されるか分かりません。
おかげで、私はこれが正しい答えだと思うし、私はそれでそれを解決した原因私は今、私のコードを手直しすることができます: 'VAR更新= { \t \t \t幅:div幅、 \t \t \t高さ:divHeight \t \t}; \t \t Plotly.relayout(chartDivId、update); ' – flipperweid
これは私の仕事に近いです。 CSSの遷移ほど滑らかではありませんが、今は大丈夫です。私が実際に行った変更は、既に上で行ったのでgdを再選択しないことでした。動作するようですが、それは間違いですか?私の他のフォローアップの質問は、マウスが動いたときに使うことができる「plotly_hover_off」や何かがあるかどうかです。いずれにせよ、これは今まで私が見つけた最高の解決策でした! – Guernica88
'var updateL = { width:800、 高さ:600 }; var updateS = { width:400、 高さ:300 }; のdocument.getElementById(divArr [インデックス])に( 'plotly_hover'、関数(データ){ Plotly.relayout(GD、updateL); })。( 'plotly_unhover'、関数(データ)に{ Plotly .relayout(gd、updateS); }); ' ここは私が使用しているもので、ほとんどの場合非常に素早くちらつきがある場合を除いてほとんど動作します。 – Guernica88