惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
博客园 - 司徒正美
I
InfoQ
宝玉的分享
宝玉的分享
G
Google Developers Blog
J
Java Code Geeks
Martin Fowler
Martin Fowler
The GitHub Blog
The GitHub Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
罗磊的独立博客
腾讯CDC
F
Fortinet All Blogs
A
About on SuperTechFans
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Recent Announcements
Recent Announcements
Last Week in AI
Last Week in AI
B
Blog RSS Feed
博客园 - 聂微东
D
DataBreaches.Net
Hugging Face - Blog
Hugging Face - Blog
The Cloudflare Blog
L
LangChain Blog
Microsoft Azure Blog
Microsoft Azure Blog
aimingoo的专栏
aimingoo的专栏

博客园 - 狂歌

vscode新版1.31.1使用代码检查工具ESlint支持VUE Easyui combotree 获取自定义ID属性方法 [原创]消灭eclipse中运行启动的错误:“找不到或无法加载主类”问题 [转]【Java】内部类(Inner Class)如何创建(new) spring boot项目编译出来的jar包如何更改端口号 [转] 分享一个快的飞起的maven的settings.xml文件 [转]maven打包报错:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.5:test mysql字符集问题 错误代码: 1267 Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_croatian_ci,IMPLICIT) for operation '=' WebApi 返值的实体值前缀加了个下划线 VS2015 异常 :遇到异常。这可能是由某个扩展导致的 【转】WebAPI使用多个xml文件生成帮助文档 ASP.Net WebAPI中添加helppage帮助页面 C# List泛型转换,int,string 转字符,转数组 iBatisNet分布式事务的应用 MS SQL2008。 jquery.easyui.tabs 中的首个tabs被最后tabs覆盖的问题解决方法 解决easyui jQuery JS的for循环调用ajax异步问题 php网站环境无法上传的解决办法? 提高VM运行速度 [转]SQL2005系统升级手记之一-解决sa帐户被锁定
关闭easyui Tabs,有意思的JS异步处理
狂歌 · 2019-04-23 · via 博客园 - 狂歌

因业务需要,需要将关闭windows窗口内的所有Tabs关闭掉,因此写了个方法,执行结果把我惊了一下。

        function closeAllTabs() {
            var tabsCount = $("#winTabs").tabs("tabs").length;//获得Tabs个数
            for (var i = 0; i < tabsCount; i++) {//遍历
                $("#winTabs").tabs("close", i);//0~n全部关闭
            }
        }

 长期写后端,程序这样写肯定没问题,但是发现前端JS执行可不是按照后端的方式来执行的,其运行结果,只能关闭一半的Tabs标签;

经过调试后发现 $("#winTabs").tabs("close", i) 这个i是正常的加下去的,但是Tabs个数是由于被关闭掉就越来越少,因此执行到一半的时候后面的标签已经不存在了,但是还是继续关下去。

因此纠正代码,只需要将$("#winTabs").tabs("close", i) 这里的i更改为0即可,其原理是我永远只关第一个标签直接结束,解决问题。

1         function closeAllTabs() {
2             var tabsCount = $("#winTabs").tabs("tabs").length;//获得Tabs个数
3             for (var i = 0; i < tabsCount; i++) {//遍历
4                 $("#winTabs").tabs("close", 0);//注意这里更改为0了
5             }
6         }