2015-03-24 62 views
1

我正在修改cefsimple应用程序以满足我的需求。我在后台有一个很长的起始线程,所以需要一段时间直到显示网页(5-10秒)。与此同时,我想显示某种启动画面,或者在主页面呈现之前至少显示一些HTML。什么是最好的(或任何)的方式来做到这一点?嵌入式铬(CEF) - 闪屏

在此先感谢!

回答

2

我们已将html文件编译到我们的应用程序中,并将该URL传递给CefBrowserHost :: CreateBrowserSync()。

请参阅cefclient示例中的resource_util_win.cpp,特别是GetResourceId()以将URL关联到编译的资源ID。

同时,我们splashscreen.html的身体有

<body class="splash" onload=" pageLoad() "> 

和页面加载()看起来像

 function pageLoad() { 
      window.location = "www.yourrealurl.com"; 
      }   
     } 

我们的闪屏具有背景的样式表和GIF动画设置,并且一旦请求的URL进入,它就会消失。

如果您已经获得服务器响应,但渲染需要很长时间,这将无济于事。我们在加载的页面中使用Angular来隐藏它,直到它完成加载它的依赖关系。

<div ng-cloak class="ng-cloak" ng-if="IsInitDone()"> 
+0

感谢您的回答。它已经给了我一个非常好的主意,但是如果你不介意的话,可以给我一些更多的细节,也许有代码示例(对于CEF来说,我完全陌生并且来自Java世界)。例如,你如何阅读并传递splashscreen.html。如果一台服务器(实际上是嵌入式JVM)在www.yourrealurl.com上还没有回复,但会在几秒钟后发生什么?谢谢! – Vyacheslav 2015-03-25 21:03:08

+0

你在哪个平台上? – PhysicalEd 2015-03-26 01:58:26

+0

我使用Windows 8. – Vyacheslav 2015-03-26 10:15:32