3
我使用一個簡單的css類來製作一個動態創建div的頁面,它可以在mouseover上調整大小。我使用它,因此這些div在頁面加載時很小,如果用戶想要仔細觀察,他們只需將鼠標懸停在上面。Plotly js div div
CSS基本上看起來像這樣
.resize {
width: 400px;
height: 300px;
transition: all 1s;
}
.resize:hover {
width: 800px;
height: 600px;
}
我試圖讓我在這跟Plotly.js創建爲用戶將鼠標移動DIV自動調整的情節。
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 Here,但說實話我不確定它是如何適用於我的代碼的。
謝謝,我認爲這是正確的答案,現在我可以返工我的代碼,因爲我用的是解決它:'變種更新= { \t \t \t width:divWidth, \t \t \t身高:divHeight \t \t}; \t \t Plotly.relayout(chartDivId,update);' – flipperweid
這對我來說很合適。它不像CSS轉換那樣流暢,但現在可以。因爲我們已經在上面做過了,所以只有改變我真正做出的纔是不重新選擇gd。似乎工作,但這是一個錯誤?我的其他跟進問題是,如果有一個'plotly_hover_off'或我的鼠標移開時可以使用的東西。無論哪種方式,這是迄今爲止我找到的最好的解決方案! – Guernica88
'var updateL = { width:800, height:600 }; var updateS = { width:400, height:300 }; 的document.getElementById(divArr [指數])上( 'plotly_hover',函數(數據){ Plotly.relayout(GD,updateL); })。在( 'plotly_unhover',函數(數據){ Plotly .relayout(gd,updateS); });' 這是我正在使用的,它大部分工作,除了它似乎有時閃爍很快。 – Guernica88