首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图表大小在我鼠标对它后不会改变。

问图表大小在我鼠标对它后不会改变。
EN

Stack Overflow用户
提问于 2018-02-08 13:55:20
回答 2查看 24关注 0票数 0

在下面的图表中,我希望当我鼠标超过图表的大小时,用以下代码进行更改:

代码语言:javascript
复制
var boxWidth = $("#chart").width();

    $("#chart").mouseenter(function(){
        $(this).animate({
            width: "1500"
        });


    });
  $("#chart").mouseleave(function(){
        $(this).animate({
            width: boxWidth,


        });


    });

但是,正如您所看到的,唯一的变化是背景宽度而不是图表,下面是代码片段:

https://dojo.telerik.com/onEBe

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-08 14:04:20

您需要重新初始化图表。

代码语言:javascript
复制
$("#chart").mouseenter(function() {
  if ($(this).width() != 1000) {
    $(this).animate({
      width: "1000px"
    }, function() {
      createChart();
    });
  }


});
$("#chart").mouseleave(function() {
  if ($(this).width() != boxWidth) {
    $(this).animate({
      width: boxWidth
    }, function() {
      createChart();
    });
  }
});

在这里,我检查宽度,因为在宽度变化时只需要重新创建一次图表。

更新:

而不是再次创建图表,只需刷新它,它将获得容器的宽度和高度。

代码语言:javascript
复制
$("#chart").data("kendoChart").refresh();
票数 1
EN

Stack Overflow用户

发布于 2018-02-08 14:02:54

您必须再次使用createChart()才能在图表上实际执行刷新。

代码语言:javascript
复制
    $("#chart").mouseenter(function(){
        $(this).animate({
            width: "1500"
        });
        createChart();
    });
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48687181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档