c# - 如何确定网页是否已完全加载到网络浏览器中?

标签 c# asp.net .net winforms webbrowser-control

我正在开发基于 HTML 的用户界面的 Windows 窗体应用程序。 我需要知道网页何时完全加载。 我已经测试了许多 Web 浏览器事件,如 DocumentCompleted、IsBusy、ReadyState,但没有一个响应我的预期。

最佳答案

如果你会使用jQuery库,那就真的很简单了。

$(document).ready() {
    //your page is fully loaded
};

否则,您将不得不根据所使用的浏览器依赖不同的方法。由于它是一个 Windows 窗体应用程序,我假设您使用的渲染引擎是基于 IE 的。如果是这样,那么这可能对您有用:

if (document.attachEvent)
{
 document.attachEvent("onreadystatechange", function()
 {
      if (document.readyState === "complete")
      {
           document.detachEvent("onreadystatechange",
                arguments.callee);
           /* code to run on load */
      }
 });
}

如果您有兴趣,可以在这里找到其他依赖于浏览器的解决方案: http://dean.edwards.name/weblog/2006/06/again/

关于c# - 如何确定网页是否已完全加载到网络浏览器中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9339845/

相关文章:

C#:Blowfish 加密单个双字

c# - angularJS 单元测试

c# - 我的 JavaScript 有什么问题吗? (C#/ASP.NET)

c# - 在 Asp.Net 5 中访问客户端 IP 地址 (REMOTE_ADDR)

.net - 如何从 Visual Studio 2008 生成 HTML 5 兼容代码?

c# - 如何在 C# 中使用 sendkey 消息定位虚拟桌面?

c# - 如何从 C++ tesseract 库创建 C# 包装器类?

javascript - .NET 客户端 requiredFIeldValidator 与 Bootstrap "has-error"类

c# - 使用 FlaUI 为电影和电视设置滚动百分比

c# - 通过 .NET 运行 cmd 命令?