按钮实现tab页并自动切换

2297
1

yangm 数据达人Lv4

发表于2021-8-5 17:52

楼主
由于tab页组件对样式等有诸多限制,为了实现更加美观更加自由的tab页效果。我们通过按钮传参控制内容显示隐藏达到此需求。同时加入自动切换脚本,达到自动轮播的效果。
一、通过按钮控制容器内容显示隐藏。
(1)拖入按钮设置按钮分组。
分组设置:两个按钮设置相同分组,可以达到互斥的效果。即点击其中一个按钮,另一个按钮自动失效。如图:分组均为‘1’。

(2)设置按钮钻取。
钻取设置:设置热区式钻取,分别给两个按传参。如图:按钮1参数名为@cs值为1,按钮2参数名为@cs1值为2。

(3)配置需要联动的内容显示隐藏。
显示表达式:1代表显示,2代表可预览,4代表可打印,8代表可导出。如果一个组件计算后希望不显示,但可打印可预览也可导出,那么输入需要的相关功能对应的值的和即可,这里输入14(2+4+8=14)。固给需要联动显示隐藏的内容添加if判断,如图:内容1显示表达式:<#=if(@cs=2,0,1)#>,内容2显示表达式:<#=if(@cs=1,0,1)#>。

二、添加自动轮播脚本。
(1)设置需要联动的内容id。为需要联动内容代号。

(2)设置按钮id。
F12调出控制台,鼠标选取按钮定位。如图为按钮ID。

(3)设置按钮选中颜色。
此处只需要写16进制色值即可。
(4)设置轮播时间。
单位毫秒。
完整脚本如下:

  1. //统计图id
  2. var chart1="HHH3";
  3. var chart2="HHH2";

  4. //按钮F12 ID
  5. var btn1="WidgetParamButton41";
  6. var btn2 = "WidgetParamButton54";

  7. //选中颜色
  8. var chosenColor ="#00FFFF";
  9. //未选中颜色
  10. var  unChoenColor = "#f0f0f0";

  11. setInterval(function(){
  12. if(document.getElementById(chart1).style.display == "block"){
  13. document.getElementById(btn1).style["background-color"]=chosenColor;
  14. document.getElementById(btn2).style["background-color"]=unChoenColor;
  15. document.getElementById(chart1).style.display="none";
  16. document.getElementById(chart2).style.display="block";
  17. }else {
  18. document.getElementById(btn2).style["background-color"]=chosenColor;
  19. document.getElementById(btn1).style["background-color"]=unChoenColor;
  20. document.getElementById(chart2).style.display="none";
  21. document.getElementById(chart1).style.display="block";
  22. }
  23. },5000);
复制代码



最近看过此主题的会员

遗世独立

esen_4XMY0N6IMU

esen_4ZJ8RP7VB1

esen_4UIBLD8PRN4M

esen_52KGVHIWO9

esen_50RKBHQRZI

1个回答

只看楼主

lianghf 数据小白Lv1

发表于2022-3-29 10:38

只看该作者

取消 关注该作者的回复

沙发

有一点点用

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号