2016-11-28 51 views
0

我想使用canvasjs的縮放和平移功能,但使用自己的按鈕(以便我可以控制它們的樣式,位置......)。這可能嗎?使用自定義按鈕放大CanvasJS

+0

更多鈔票複製:http://stackoverflow.com/questions/5189968/zoom-canvas-to-mouse-cursor – Troyer

+0

@Troyer,OP在談論canvasjs庫,不是' '標籤。上次我試圖自定義canvasjs時 - 很難,我放棄了(幾年前)。我不知道現在會發生什麼。 –

+0

您可以利用jQuery來自定義按鈕。按鈕存儲在類** canvasjs圖表工具欄** – Beevk

回答

2

看看這個!

var dataPoints = []; 
 
var y = 0; 
 
for (var i = 0; i < 100; i += 1) { 
 
\t y += (Math.random() * 10 - 5); 
 
    \t dataPoints.push({ 
 
    x: i - 100/2, 
 
    y: y     
 
    }); 
 
} 
 

 
var chart = new CanvasJS.Chart("chartContainer", 
 
{ 
 
\t \t title: { 
 
\t \t \t text: "Customized Zoom and Pan Buttons", 
 
\t \t \t horizontalAlign: "left" 
 

 
\t \t }, 
 
    zoomEnabled:true, 
 
\t \t data: [ 
 
\t \t { 
 
\t \t \t type: "spline", 
 
\t \t \t dataPoints: dataPoints 
 
\t \t } 
 
\t \t ] 
 
}); 
 
chart.render(); 
 

 
$('.canvasjs-chart-toolbar button:eq(0)').text('Pan').addClass('myButton').click(function() { 
 
\t \t if($(this).hasClass("clicked")) { 
 
     $(this).text("Pan"); 
 
     $(this).removeClass("clicked"); 
 
    } else { 
 
     $(this).text("Zoom"); 
 
     $(this).addClass("clicked"); 
 
    } \t 
 
\t }); 
 
$('.canvasjs-chart-toolbar button:eq(1)').text('Restore').addClass('myButton').click(function() { 
 
\t $('.canvasjs-chart-toolbar button:eq(0)').text('Pan').removeClass("clicked"); 
 
});
.myButton { 
 
\t background-color:#599bb3; 
 
\t -moz-border-radius:28px; 
 
\t -webkit-border-radius:28px; 
 
\t border-radius:28px; 
 
\t border:1px solid #000 !important; 
 
\t cursor:pointer; 
 
\t color:#ffffff; 
 
\t font-family:Arial; 
 
\t font-size:17px; 
 
\t padding:6px 20px !important; 
 
    margin-left: 3px !important; 
 
\t text-decoration:none; 
 
\t text-shadow:0px 1px 0px #2f6627; 
 
} 
 
.myButton:hover { 
 
\t background-color:#476e9e; 
 
}
<script src="http://canvasjs.com/assets/script/canvasjs.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 

 
<div id="chartContainer" style="height: 360px; width: 100%;"></div>

+0

這不起作用,但我把它作爲一個提示:我可以禁用內置的工具欄(通過隱藏工具欄通過js)和「複製」他們的點擊偵聽器爲我自己的按鈕 – user2224350