修改frm模板中画布样式的心得

楼主
我是社区第66158位番薯,欢迎点我头像关注我哦~
今天有个童鞋问我,我frm中画布的背景颜色怎么修改啊,我第一反应就是把画布的样式改为自定义,然后去修改啊。
但是我打开设计器发现画布是没有这个东西的。
于是我想到来个css样式呗
然后我就在页面上用F12获取到画布的class
根据css创建了样式
  1. .fr-absolutelayout ui-state-enabled  {
  2. background-color: yellow;
  3. }
复制代码
比如这样,引用了之后发现没有用,后来发现我ui-state-enabled前面忘了加点。
  1. .fr-absolutelayout .ui-state-enabled  {
  2. background-color: yellow;
  3. }
复制代码
这样才可以!!!
所以童鞋们以后有累死的class一定要记得 加点 要不会浪费好久的时间。
引用了之后发现页面上所有的画布都改了颜色,我擦这个可不是我想要的。
修改css吧,但是看了看由于技术的问题吧,不会修改了。
琢磨就算了改为引用js吧。
  1. window.onload = function(){
  2. //里面的东西我删了
  3. };
复制代码

写了几个加载结束的事件,运行的时候发现,我的这个js是在页面开始加载就运行的。
里面要获取对象都没有加载出来。这给我郁闷的。在设计器里找啊,就是找不到在哪里才能添加加载结束的事件。
画布的空间有个初始化的事件,我在那个里面也试了,在画布刚开始初始化的时候 就执行了里面的js,后面的对象还是没有获取到。
后来还是想到以前客服小哥给我写过一个添加行获取焦点的模板,里面的事件是加了延迟的,我开始还一直不知道为啥加延迟,也没有当时问他。
我就抱着试试的态度,在我写的js前面加了延时。
  1. setTimeout(
  2. function(){
  3. $("div[widgetname='ABSOLUTE0_C']").each(function(index,item){
  4. $(item).css("background-color","yellow");
  5. });               
  6. },20);
复制代码
然后写在画布的初始化事件上,点击预览,宾果!
成功了。
通过这一上午的研究,发现在控件初始化事件里的js加上延时就可以实现这个控件加载结束的事件
这个对于以后做大屏或者别的展示还是比较有用的,可以自己来修改想要的样式,更灵活






分享扩散:
参与人数 +1 F豆 +66 理由
兔子酱 + 66 还是感谢分享

查看全部评分

沙发
发表于 2017-12-20 12:53:26
body的背景色是可以在设计器里设置的啊
板凳
发表于 2017-12-20 13:36:16
cherishdqy 发表于 2017-12-20 12:53
body的背景色是可以在设计器里设置的啊

你的那个body   我说的绝对画布
地板
发表于 2017-12-20 13:41:39
cherishdqy 发表于 2017-12-20 12:53
body的背景色是可以在设计器里设置的啊

[img]file:///C:\Users\kong\AppData\Roaming\Tencent\Users\1176846029\QQ\WinTemp\RichOle\%7Q15FGEKDD)UU7U@5[JL@3.png[/img]

5楼
发表于 2017-12-20 14:28:48


绝对画布块的缩放逻辑设置为适应区域,把里面的报表块填充满整个画布块就可以了
6楼
发表于 2017-12-20 19:03:13
可以,楼主很高产啊
7楼
发表于 2017-12-21 08:30:45
axing 发表于 2017-12-20 19:03
可以,楼主很高产啊

就这几天 闲着才弄的
8楼
发表于 2018-5-11 22:56:01
学习了  楼主的JS和css玩的溜啊
9楼
发表于 2018-5-16 09:04:25
感谢分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

15回帖数 2关注人数 8508浏览人数
最后回复于:2022-8-9 20:47

返回顶部 返回列表