-2
私はonclickハンドラーのオンロードを偶発的にトリガーする次のクラスを持っています。トリガーOnclickハンドラーのオンロードによる事故
import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebChromeClient;
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.setWebChromeClient(new WebChromeClient());
w.loadUrl("http://dus.tn/music.html");
w.setWebViewClient(new WebViewClient() { public void onPageFinished(WebView w, String url) {
String s = "javascript:"
+ "(function() {"
+ " try{document.body.style.color='blue';del();}catch(e){}"
+ "})();";
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT)
w.evaluateJavascript(s, null);
else w.loadUrl(s);
}
});
}
@Override
public void onBackPressed() {
if(w.canGoBack())w.goBack();
else super.onBackPressed();
}
}
htmlコードはhereで、dus.tn/music.htmlにも掲載されています。