在 kendoChart 上检测缩放
Detect zoom on kendoChart
我正在尝试检测用户是否放大了 kendoChart。
这个的用处是看我是否应该刷新这个图表的dataSource。
到目前为止的代码
<!--DATA SOURCE!-->
var lineSource = new kendo.data.DataSource(...DATA...);
<!--KENDO CHART!-->
$("#Line").kendoChart({
dataSource: lineSource,
series: [{
type: "line",
aggregate: "max",
field: "value",
categoryField: "date",
markers: {
visible: false
},
tooltip: {
visible: true,
template: "#= category # : #= value#ms"
}
}],
categoryAxis: {
baseUnit: "minutes",
labels:{
step: 10
},
},
pannable: true,
zoomable: true
});
<!--REFRESHING DATA!-->
setInterval(refresh1, 60000);
function refresh1(){
if(document.getElementById("Line")){
$("#Line").data("kendoChart").dataSource.read();
$("#Line").data("kendoChart").refresh();
}
}
缩放检测伪代码:
function refresh1(){
if(NOT ZOOMED IN ON LINE){
if(document.getElementById("Line")){
$("#Line").data("kendoChart").dataSource.read();
$("#Line").data("kendoChart").refresh();
}
}
}
问:我能检测到 kendoChart 上的缩放吗?
问:如何检测此缩放以用于 "if" 语句?
你可以这样检测
var boolChange = false;
$("#chart").kendoChart({
series: [
{ data: [1, 2] }
],
zoom:
function (e) {
boolChange = true;
}
});
if (!boolChange) {
}
http://docs.telerik.com/kendo-ui/api/javascript/dataviz/ui/chart#events-zoom
我正在尝试检测用户是否放大了 kendoChart。
这个的用处是看我是否应该刷新这个图表的dataSource。
到目前为止的代码
<!--DATA SOURCE!-->
var lineSource = new kendo.data.DataSource(...DATA...);
<!--KENDO CHART!-->
$("#Line").kendoChart({
dataSource: lineSource,
series: [{
type: "line",
aggregate: "max",
field: "value",
categoryField: "date",
markers: {
visible: false
},
tooltip: {
visible: true,
template: "#= category # : #= value#ms"
}
}],
categoryAxis: {
baseUnit: "minutes",
labels:{
step: 10
},
},
pannable: true,
zoomable: true
});
<!--REFRESHING DATA!-->
setInterval(refresh1, 60000);
function refresh1(){
if(document.getElementById("Line")){
$("#Line").data("kendoChart").dataSource.read();
$("#Line").data("kendoChart").refresh();
}
}
缩放检测伪代码:
function refresh1(){
if(NOT ZOOMED IN ON LINE){
if(document.getElementById("Line")){
$("#Line").data("kendoChart").dataSource.read();
$("#Line").data("kendoChart").refresh();
}
}
}
问:我能检测到 kendoChart 上的缩放吗?
问:如何检测此缩放以用于 "if" 语句?
你可以这样检测
var boolChange = false;
$("#chart").kendoChart({
series: [
{ data: [1, 2] }
],
zoom:
function (e) {
boolChange = true;
}
});
if (!boolChange) {
}
http://docs.telerik.com/kendo-ui/api/javascript/dataviz/ui/chart#events-zoom