-
1505121235 数据老手Lv5
发表于2020-5-8 18:10
楼主
1.简介
部分展示页面中,在放大缩小浏览器过程中,要求当浏览器窗口大小变化时,统计图、地图等的大小也跟着放大或缩小。
对于这样的需求,使用酷屏报表的“加载完成事件”来实现。
2.接口说明
resize()
相关API说明
(1)通过g_coolpage全局变量调度其他对象。
(2)通过g_coolpage.getWidgetById拿到具体的某个组件对象,唯一参数是组件名称,如HHH1等,这个组件可能是统计图、地图、迷你图或某个HTML组件。
(2)所有内置的统计图、迷你图、地图和内置组件本身(CWidgetResultChart/CWidgetResultMap/CWidgetResultMiniChart/CWidgetResultHtml)都实现了resize方法,是个无参数的方法,对于HTML组件,需要自己实现,如果没有写,说明该组件不支持随容器大小变化自适应大小;
3.具体使用举例
在酷屏报表中拖入一个田字型布局,在田字左上角中拖入一个统计图,名称HHH1,设置了左边距和上边距为0,宽高都设置成了100%。
则在酷屏的“加载完成事件”(报表编辑->左侧TAB栏->结构树->编辑区->右侧属性栏->事件->加载完成事件)中后面部分,加入如下代码以实现:
var domyresize = function() {
g_coolpage.getWidgetById("HHH1").resize();
};
window.addEventListener ? window.addEventListener("resize", domyresize) : window.attachEvent("onresize", domyresize);
4.关于其他应用场景
复杂嵌套页面的自适应需求,让有开发经验的实施人员或开发者自己写实现:获取到具体场景下需要自适应大小的组件,调用它的resize()方法就OK了。