javascript - WebView JavaScript 仅适用于 Android 8.0 版本
问题描述
我在 Android Studio 上使用 WebView 开发一个应用程序,并被困在一个按钮上,用 HTML、CSS 和 JavaScript 打开和关闭一个窗口(div)。问题是:按钮功能仅在 Android 8.0 版本(Genymotion 模拟器)上运行良好,我不知道为什么会发生这种情况,因为其他一些功能正常工作。
一些示例代码:
HTML
按钮:
<button onclick="open_window()" class="button_template">ABC</div>
DIV 打开:
<div class="window_template" id="window_1">12345</div>
CSS 样式:
.window_template{
background-image: url(sample.jpg);
opacity: 0.9;
border: 2px solid black;
text-align: center;
margin: 0 auto;
box-sizing: border-box;
}
.button_template {
color: white;
font-family: Arial;
font-size: 105%;
background-color: transparent;
border: none;
cursor: pointer;
}
window_1{
width: 80%;
height: 35%;
position: absolute;
display: none;
}
JavaScript:
function open_window(){
document.getElementById("window_1").style.display="block";
}
主要活动:
package sample.sampla;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN );
setContentView(R.layout.activity_main);
WebView myWebView = (WebView)findViewById(R.id.webView1);
WebSettings mySettings = myWebView.getSettings();
myWebView.setWebChromeClient(new WebChromeClient());
myWebView.setWebViewClient(new WebViewClient());
mySettings.setDomStorageEnabled(true);
mySettings.setJavaScriptEnabled(true);
myWebView.loadUrl("file:///android_asset/www/index.html");
}
}
毕竟DIV没有打开。
解决方案
推荐阅读
- amazon-web-services - 使用 Prometheus 和 Grafana 可视化 EC2 元数据
- arrays - 如何将数组中对象的属性分配给多个类属性?
- c# - 错误:“Microsoft.WindowsAPICodePack.Shell.PropertySystem.PropertySystemException 无法获取此属性的可写属性存储。”
- javascript - 如何在更改事件完成之前更新 DOM?
- wordpress - 在 Wordpress 上更改滚动页面的背景颜色
- delphi - 在 Delphi (VCL/Windows) 中更改之前清除 TBitmap
- c# - 具有多种身份验证方案的 .NET Core API 测试
- c# - 难以理解的警告
- pdf - 创建旋转的地理空间 PDF
- python-3.x - UnicodeDecodeError:“charmap”编解码器无法解码位置 805 中的字节 0x81:字符映射到