我有一個webview和im加載外部HTML窗體的網站。我嘗試使用javascript函數更改背景顏色:Android - 用webview加載URL後我可以更改背景顏色
function changeBGC(color){
document.bgColor = color;
}
並且不起作用。但如果我加載本地然後即時更改背景顏色。是否有某種安全性阻止我改變一個我從外部加載到webview的網頁?
我有一個webview和im加載外部HTML窗體的網站。我嘗試使用javascript函數更改背景顏色:Android - 用webview加載URL後我可以更改背景顏色
function changeBGC(color){
document.bgColor = color;
}
並且不起作用。但如果我加載本地然後即時更改背景顏色。是否有某種安全性阻止我改變一個我從外部加載到webview的網頁?
您可以使用WebViewClient,example here運行JavaScript。
changes the background color of a document的javascript代碼。
所以把它放在一起:
當INITING的WebView:
WebView webview = new WebView();
webview.setWebViewClient(new WebClient());
webView.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("stackoverflow.com");
你的Web視圖客戶端:
public class WebClient extends WebViewClient {
int color;
public WebClient(int color) {
this.color = color;
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url)
{
String command = "javascript:document.body.style.background = " + color + ";";
view.loadUrl(command);
}
}
感謝事實證明,這是我的JavaScript是問題,我改變了你的提供的鏈接。你可以upvote我的問題,我不知道爲什麼它被拒絕。 – j2emanue
很高興解決。我把它提高了。我認爲它被拒絕了,因爲你還沒有在瀏覽器中嘗試過你的javascript代碼,並把它作爲Android發佈,而它有一個JavaScript問題。 –
你想T改變網頁視圖的背景顏色?如果是的話,那麼你也可以嘗試使用'setBackgroundcolor'。 –