我遇到了问题,请使用我正在使用的网络视图。 用于正确渲染视图的JavaScript文件必须按特定顺序加载。 在浏览器(chrome mobile; safari desktop,...)上运行良好。Android web view按随机顺序加载javascript /不加载
但是在我的网络视图中,结果是不可预测的。
这是latests失败来看,我有一个:
的HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<style>
body {
font-family: Monospace;
background-color: #000;
color: #fff;
margin: 0px;
overflow: hidden;
}
</style>
</head>
<body>
<canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()"></canvas>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="js/script1.js"></script>
<script src="js/script2.js"></script>
<script src="js/script3.js"></script>
<script src="js/script4.js"></script>
... More scripts...
</body>
</html>
下面是Java代码:
mWebView = (WebView)findViewById(R.id.webView);
mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
//mWebView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setHorizontalFadingEdgeEnabled(false);
mWebView.setScrollbarFadingEnabled(false);
mWebView.setVerticalFadingEdgeEnabled(false);
mWebView.setOverScrollMode(View.OVER_SCROLL_NEVER);
mWebView.loadUrl("http://192.168.1.24:8000/path/to/index.html");
的问题是随机,JavaScript文件被解释为错误的顺序或只是没有加载。
从我的理解,JavaScript必须按声明顺序加载。
我错了吗? 有什么我可以做的改变这种行为? (除了连接所有的JS ..)
尝试在本地保存'jquery'脚本,然后运行。 – Riad
@Riad我可以但实际上我从来没有任何jQuery的问题还没有 – Antzi
@Riad我移动jQuery,并且它不再加载时,当我使用web视图(从浏览器加载好) – Antzi