Android WebView未注册onclick javascript链接
我有以下课程Android WebView未注册onclick javascript链接,android,android-webview,Android,Android Webview,我有以下课程 import android.app.Activity; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.webkit.WebView; import android.webkit.WebViewClient; public class MainActivity extends Activity { private WebView w; @O
import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends Activity {
private WebView w;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
w = (WebView) findViewById(R.id.activity_main_webview);
w.getSettings().setJavaScriptEnabled(true);
w.getSettings().setBuiltInZoomControls(true);
w.getSettings().setDisplayZoomControls(false);
w.setClickable(true);
w.loadUrl("https://www.w3schools.com/js/tryit.asp?filename=tryjs_alert");
}
@Override
public void onBackPressed() {
if(w.canGoBack())w.goBack();
else super.onBackPressed();
}
}
如果尝试单击“尝试”警报框,则不会触发任何事件
如何修复WebView?WebView不会自动显示AlertDialog。您必须使用setWebChromeClient设置WebChromeClient,然后覆盖onJsAlert以显示警报对话框。只需设置默认WebChromeClient:
这里也有类似的问题 尝试添加以下内容:
webView.getSettings().setPluginsEnabled(true);
webView.getSettings().setAllowFileAccess(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.getSettings().setPluginsEnabled(true);
webView.getSettings().setAllowFileAccess(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);