Javascript Android webview切换div
我一直在想如何在Android Webview中切换Div,如下所示 这是我的Android代码,但根本不会切换,有人能解释我做错了什么吗?谢谢:Javascript Android webview切换div,javascript,android,jquery,webview,android-webview,Javascript,Android,Jquery,Webview,Android Webview,我一直在想如何在Android Webview中切换Div,如下所示 这是我的Android代码,但根本不会切换,有人能解释我做错了什么吗?谢谢: wv = (WebView) findViewById(R.id.webView1); WebSettings webSettings = wv.getSettings(); wv.setWebViewClient(new WebViewClient()); wv.getSettings().setLoadWithOverviewMode(tr
wv = (WebView) findViewById(R.id.webView1);
WebSettings webSettings = wv.getSettings();
wv.setWebViewClient(new WebViewClient());
wv.getSettings().setLoadWithOverviewMode(true);
wv.getSettings().setUseWideViewPort(true);
wv.getSettings().setDisplayZoomControls(false);
wv.getSettings().setBuiltInZoomControls(false);
wv.getSettings().setSupportZoom (false);
wv.getSettings().setJavaScriptEnabled(true);
webSettings.setBuiltInZoomControls(true);
String script = "$('#liked').on('click', function() {$('#liked').hide();$('#notliked').show();});$('#notliked').on('click', function() {$('#liked').show();$('#notliked').hide();});";
html = "<div id='liked' style='float:left;display:none; height:100px; width:100px; background-color:blue'>1</div><div id='notliked' style="float:left;height:100px; width:100px; background-color:red">2</div>";
String summary = "<html>"+script+"<body>"+html+"</body></html>";
wv.loadUrl("about:blank");
wv.loadData(summary, "text/html", null);
尝试将javascript包装到标记中 此外,还需要将调用$window.load中的javascript包装起来,以便在DOM就绪时注册处理程序 此外,还需要链接到JQuery库的一个版本 您确定需要JQuery来完成此任务吗?您可以使用标准javascript编写它,只需在div上使用onclick处理程序。。。比如:
<div id='liked' style='float:left;display:none; height:100px; width:100px; background-color:blue' onclick="document.getElementById('notliked').style.display='block'; document.getElementById('liked').style.display='none';">1</div>
<div id='notliked' style="float:left;height:100px; width:100px; background-color:red; disply:block" onclick=" document.getElementById('liked').style.display='block'; document.getElementById('notliked').style.display='none';">2</div>
尝试在插入脚本之前加载HTML数据。可以在HTML加载到web视图后插入Javascript。这是更好的主意。因此,您的代码应该如下所示:
String summary = "<html><body>"+html+"</body></html>";
wv.loadUrl("about:blank");
wv.loadData(summary, "text/html", null);
这将在当前网页上插入javascript,您甚至不需要注意它必须插入到哪里以及如何插入。Webview会处理的。我明白了,添加了一些。
wv.loadUrl("javascript:"+script);