【发布时间】:2014-10-06 20:24:02
【问题描述】:
我想在所有浏览器(Google Chrome、Mozilla Firefox、Internet Explorer、Safari、Opera)上加载小程序时添加进度条。我尝试使用 javascript 和 html body onload 方法来实现这一点。我使用下面的代码..
<html>
<head>
<title>Your Title Here</title>
</head>
<script src="/jquery.js" type="text/javascript">
</script>
<script src="/jquery.browser.js" type="text/javascript">
</script>
<script language="JavaScript" type="text/javascript">
//if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){
//alert("firefox");
//}
function init() {
var isOpera = !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0;
var isFirefox = typeof InstallTrigger !== 'undefined';
var isSafari = Object.prototype.toString.call(window.HTMLElement).indexOf('Constructor')>0;
var isChrome = !!window.chrome && !isOpera;
var isIE = /*@cc_on!@*/false || document.documentMode;
if(isIE == 11)
{
if(document.applets[0].visibility="visible")
{
alert("Loading On Internet Explorer");
document.all.loading.style.visibility="hidden";
}
}
if(isChrome == true)
{
//alert("Google Chrome");
if(document.applets[0].visibility="visible")
{
alert("Loading On Google Chrome");
document.all.loading.style.visibility="hidden";
//alert("Loading On Google Chrome");
//alert("internet explorer");
//alert("Loading...");
//document.writeln( "User Agent = " + navigator.userAgent );
//document.loading.visibility="hidden";
//document.all.loading.style.visibility="hidden";
}
}
if(isFirefox == true)
{
//alert("mozilla firefox");
if(document.applets[0].visibility="visible")
{
alert("Loading On Mozilla Firefox");
document.all.loading.style.visibility="hidden";
//alert("internet explorer");
//alert("Loading...");
//document.writeln( "User Agent = " + navigator.userAgent );
//document.loading.visibility="hidden";
//document.all.loading.style.visibility="hidden";
}
}
if(isSafari == true)
{
//alert("Safari");
if(document.applets[0].visibility="visible")
{
alert("Loading On Safari");
//alert("internet explorer");
//alert("Loading...");
//document.writeln( "User Agent = " + navigator.userAgent );
//document.loading.visibility="hidden";
//document.all.loading.style.visibility="hidden";
}
}
}
</script>
<style type="text/css">
#loading {
position:absolute;
left:150;
top:200;
}
#myapplet {
position:absolute;
left:10;
top:10;
visibility:hide;
}
</style>
<body onLoad="init()">
<div id="loading">
<p>Loading applet, please wait.</p>
</div>
<applet archive="app1.jar" code="app1.class" align="baseline" width="620" height="442">
<p>Requires a browser that supports Java.</p>
</applet>
</div>
</body>
</html>
以上代码适用于 Internet Explorer,但不适用于 firefox 和 chromium。在小程序完全加载之前,在 mozilla firefox 中显示安装插件弹出消息时,进度条消失。小程序完全加载后,此进度条必须消失。我怎样才能正确地使用 Mozilla firefox 和 google chromium 做到这一点。我应该为每个浏览器使用不同的代码吗..
【问题讨论】:
-
每个
if(document.applets[0].visibility="visible")都必须是if(document.applets[0].visibility === "visible")
标签: java javascript html applet browser