fix: 再次修复Tab菜单右键关闭的问题

修复了:
当 a, b 时, 选中 a, 关闭 a, 造成 b 没有被选中
This commit is contained in:
MoonLeeeaf
2024-06-29 19:29:04 +08:00
parent 70b314947d
commit fb89952bcb

View File

@@ -310,14 +310,14 @@ class ChatTabManager {
let callback = (e) => {
if (menu) menu.close()
// 切到 chatTab
// document.getElementById("").previousElementSibling
// document.getElementById("").nextElementSibling
let ele = e.get(0)
while ($(ele).attr("tag") != "chatTab")
ele = ele.parentNode
// ele.previousElementSibling 是 Menu 的 Element, 因此改写成 ele.previousElementSibling.previousElementSibling
let menuHtml = $.parseHTML(`<ul class="mdui-menu">
<li class="mdui-menu-item">
<a onclick="let ele=CachedData.getAndRecycle('${CachedData.addToList(ele)}');if(ele.previousElementSibling.previousElementSibling){ChatTabManager.click($(ele.previousElementSibling.previousElementSibling).attr('target'));}ChatPage.getChatSeesion($(ele).attr('target')).remove()" class="mdui-ripple">关闭</a>
<a onclick="let ele=CachedData.getAndRecycle('${CachedData.addToList(ele)}');let elenp=ele.previousElementSibling.previousElementSibling;if(!elenp){elenp=ele.nextElementSibling};if(elenp){ChatTabManager.click($(elenp).attr('target'));}ChatPage.getChatSeesion($(ele).attr('target')).remove();if(elenp){ChatTabManager.click($(elenp).attr('target'));}" class="mdui-ripple">关闭</a>
</li>
</ul>`)
let $menu = $(menuHtml)