gpt4 book ai didi

asp.net - Visual Studio 调试器仍然显示从 iframe 中删除的旧页面

转载 作者:行者123 更新时间:2023-12-02 17:02:58 24 4
gpt4 key购买 nike

我使用模式对话框。模式对话框由一个掩码 div 和一个容器 div 构建而成。容器 div 包含一个带有模态 aspx 页面的 iFrame。当模态对话框初始化时, mask 和容器将添加到页面主体中。当我关闭模式对话框时,蒙版和容器将从主体中删除。

一切正常,当我在 Visual Studio 中开始调试并打开新的模式对话框时,我在调试器中的“脚本文档 - Windows Internet Explorer - somePage.aspx”处看到新页面

但是当我关闭并删除对话框时,页面在 VS 调试器中保持“事件”状态,直到我刷新整个页面。

这很糟糕吗?即使页面从正文中移除,它是否仍会在某个地方“保持活力”?或者它只是一个 Visual Studio 调试器 UI 的东西?

我找到了this question ,关于不断增长的脚本 block 文件。我认为这是同样的问题,但这个问题并没有得到真正的回答。

最佳答案

删除包含 iframe 的容器 div 不够

我预计这足以删除并销毁 iframe:

$(this.mask).remove();
$(this.container).remove();

该容器包含另一个 div(模式对话框标题)和一个 iframe。通过使用上述代码终止容器,该 iframe 不会被删除。看起来这不仅仅是 Visual Studio 调试器问题,因为每次我关闭并打开新对话框时,Windows 任务管理器中 iexplore.exe 进程的内存也会不断增加。

解决方案:当我显式删除 iframe 时,该页面就会从调试器中消失!

我可以通过在初始化模式对话框时将 iframe 保存在 var 中,然后在删除模式对话框时显式删除 iframe 来做到这一点。这样:

在创建/初始化模式对话框时:

this.frame = this.container.childNodes[0].childNodes[1];

并在关闭模式对话框上:

$(this.frame).remove();

关于asp.net - Visual Studio 调试器仍然显示从 iframe 中删除的旧页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11103599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com