如何在 Android WebView 中启用 jQuery 单击事件
How to enable jQuery click events in Android WebView
我看过很多类似的问题,但对我没有帮助,所以提出这个问题。
我有一个使用 jQuery 的网站。
我正在构建一个带有 webview 的 android 应用程序,它可以打开网站。当 webview 打开网站时,我遇到的问题是 webview 无法识别网站的任何点击事件。这是设置 webview 的代码。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
myWebView.setClickable(true);
myWebView.setWebChromeClient(new WebChromeClient());
String localWebsite = "http://10.0.2.2:5000/test.html";
myWebView.loadUrl(localWebsite);
}
下面是我测试网站的代码:
如何启用点击事件?
这部分 $('.symptomImage').on('click ', function () { $('#symptomsDiv').css("display","none"); });
无效!!
<script>
function test() {
$(document.body).prepend('Hello World'); // This Works
$('#status').text("DidNotClick!!") // This Works
$('.symptomImage').on('click ', function () { // This doesn't work
$('#symptomsDiv').css("display","none");
});
}
test();
</script>
HTML 网站代码
<div id="symptomsDiv" class="text-center">
<div class="symptomImage" style="display: inline-block !important">
<img src="images/symptoms/cold.png" class="img-rounded symptomImg center-block" alt="...">
</div>
<div class="symptomImage" style="display: inline-block !important">
<img src="images/symptoms/cough.png" class="img-rounded symptomImg center-block" alt="...">
</div>
<div class="symptomImage" style="display: inline-block !important">
<img src="images/symptoms/fever.png" class="img-rounded symptomImg center-block" alt="...">
</div>
</div>
用此代码替换 android 中的 Web 视图初始化并尝试。
Its working for me
webView = (WebView) findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient());
String localWebsite = "http://10.0.2.2:5000/test.html";
webView.loadUrl(url);
webView.requestFocus();
否则请检查您的网页代码是否已正确实施。
For other webpage url my above code is working fine
我看过很多类似的问题,但对我没有帮助,所以提出这个问题。
我有一个使用 jQuery 的网站。 我正在构建一个带有 webview 的 android 应用程序,它可以打开网站。当 webview 打开网站时,我遇到的问题是 webview 无法识别网站的任何点击事件。这是设置 webview 的代码。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
myWebView.setClickable(true);
myWebView.setWebChromeClient(new WebChromeClient());
String localWebsite = "http://10.0.2.2:5000/test.html";
myWebView.loadUrl(localWebsite);
}
下面是我测试网站的代码:
如何启用点击事件?
这部分 $('.symptomImage').on('click ', function () { $('#symptomsDiv').css("display","none"); });
无效!!
<script>
function test() {
$(document.body).prepend('Hello World'); // This Works
$('#status').text("DidNotClick!!") // This Works
$('.symptomImage').on('click ', function () { // This doesn't work
$('#symptomsDiv').css("display","none");
});
}
test();
</script>
HTML 网站代码
<div id="symptomsDiv" class="text-center">
<div class="symptomImage" style="display: inline-block !important">
<img src="images/symptoms/cold.png" class="img-rounded symptomImg center-block" alt="...">
</div>
<div class="symptomImage" style="display: inline-block !important">
<img src="images/symptoms/cough.png" class="img-rounded symptomImg center-block" alt="...">
</div>
<div class="symptomImage" style="display: inline-block !important">
<img src="images/symptoms/fever.png" class="img-rounded symptomImg center-block" alt="...">
</div>
</div>
用此代码替换 android 中的 Web 视图初始化并尝试。
Its working for me
webView = (WebView) findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient());
String localWebsite = "http://10.0.2.2:5000/test.html";
webView.loadUrl(url);
webView.requestFocus();
否则请检查您的网页代码是否已正确实施。
For other webpage url my above code is working fine