Easyui tab panel loading效果

在使用Easyui的Tab Panel时,如果通过content方式加载内容,不会自带loading效果。本文介绍了如何通过添加自定义loading效果并在iframe加载完成后移除来实现这一功能。通过在tab内容中插入loading div,并在iframe的onload事件中调用load函数,展示和移除loading效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

写在之前,当采用content方式加载tab panel内容时,不会像herf方式加载似得框架自有loading效果。所以就需要我们自己增加loading效果了。

解决思路非常简单:页面内容加载时隐藏页面内容显示loading,页面内容加载完毕显示页面内容隐藏loading。

代码如下:

/**

 *  定义addTab函数

 */

function addTab(title, url, iconCls){

    var tabPanel = $('#tabs');

    if(!tabPanel.tabs('exists',title)){

        var content = '<div class="panel-loading" style="position: absolute;left: 0;top: 30px;">加载中。。。</div><iframe class="tabPanel" οnlοad="load()" scrolling="auto" frameborder="0"  src="'+ url +'" style="width:100%;height:100%;opacity: 0"></iframe>';//loading画面一起加载,iframe的透明度设为0。利用onload函数,当iframe加载完毕时执行load()

        tabPanel.tabs('add',{//添加一个新的标签页面板

            title:title,

            content:content,

            iconCls:iconCls,

            fit:true,

            cls:'pd3',

            closable:true

        });

    }

    else

    {

        tabPanel.tabs('select',title);// 如果所选面板已经存在,跳转到选择面板

        var tab = tabPanel.tabs('getSelected');

        tab.panel('refresh');//并刷新面板

        }

}

function load() {//显示iframe。移除loading效果

    $(".tabPanel").css("opacity",1);

    $(".panel-loading").remove();

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值