2013-10-03 71 views
3

介紹JavaScript不工作在WebView - Android?

下面我有我的認真定製的WebView(在我的活動的OnCreate)..

WebView waw = (WebView) findViewById(R.id.webView1); 

      waw.getSettings().setBuiltInZoomControls(true); 
      waw.getSettings().setSupportZoom(true); 
      waw.getSettings().setSupportMultipleWindows(true); 
      waw.getSettings().setLoadWithOverviewMode(false); 
      waw.getSettings().setJavaScriptEnabled(true); 
      waw.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); 
      waw.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR); 
      waw.getSettings().setUseWideViewPort(false); 

      waw.setWebViewClient(new WebViewClient() { 
       public void onReceivedError(...) 
//Show error toast here. 
       } 
      }); 

      waw.loadUrl("http://mysecreturl.com"); 

於是,經過很大的努力這裏是我所做的一切:

我的活動以全屏模式打開,完全由web視圖組成...我通過打開URL直接開始,我已啓用縮放控件中的內置縮放,設置默認縮放等。

有問題的東西

因此,在我試圖打開的網站中,我探聽了頁面源代碼,並且我發現這是導致我的問題的確切按鈕。

<button><img src="img/Start.png" onclick="javascript:startSurf()"></button> 

它有一個圖像,Start.png和一個函數,我找不到確切的代碼。

這就是我想要打開的。但不能。我按下了,沒有任何反應,它只是忽略了點擊這個特定的按鈕(其他鏈接工作得很好)....它與JavaScript有關(99%肯定)

鏈接和其他一切工作只是好,我認爲這是唯一一個使用JavaScript的按鈕,所以也許會導致問題。

當我嘗試這樣做時,在我的PC上甚至是默認的Android瀏覽器(在手機上)中說...當我按下此按鈕(在相同的URL)...出現彈出窗口與網頁。這就是我想要的。

現在我只想讓它剛剛打開,只要按下按鈕就可以做些什麼。它可以隨意打開,新窗口,同一頁面,使用默認瀏覽器 - 任何東西。

我已經盡力了。 (見上)..我已經啓用了Java腳本,啓用了多個窗口,啓用JS打開一個窗口 - 絕對沒有變化。如果不啓用這些按鈕,按鈕的OnPress動畫不起作用,現在我們可以看到按鈕被按下了,但它仍然沒有任何作用。我再次談論按鈕與我試圖使用的網站上的JS功能)

那麼,如何解決這個問題?

謝謝你:-D

+0

您是否設法解決這個問題? – Mauricio

回答

0

試試這個;

<a href="#" onclick="startSurf(); return false;"><img src="img/Start.png"></a> 

<button><img src="img/Start.png" onclick="startSurf()"></button> 
+0

這不是我的網站....我如何可以編輯源代碼作爲查看器? – Zairo

+0

我想我反覆提到,我試圖打開一個網頁...所以,這不是一個選項,對不起:-( – Zairo

1

它可能會有一些跨域策略問題,您可以嘗試通過在WebViewClient實例覆蓋shouldOverrideUrlLoading來解決此,也看看loadDataWithBaseURL()。