關於Android WebView對JS與href支援

來源:互聯網
上載者:User

WebView 支援javascript,但只限於本地的js代碼,不提供如PC瀏覽器一樣強大功能遞迴下載功能(可能也是因為手機自身的儲存有限所致)。

因此,開發基於JS的Anroid程式不能依靠PC瀏覽器的這種功能,只能執行本地js,css代碼。

曾經嘗試在Anroid中利用如下的代碼,失敗

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>修改地圖狀態</title>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.1&services=true"></script>
</head>
<body>

<img src="http://map.baidu.com/mobile/img/logo.png"/>
<div style="width:520px;height:340px;border:1px solid gray" id="container"></div>
</body>
</html>
<script type="text/javascript">
  var map = new BMap.Map("container");                // 建立Map執行個體
  var point = new BMap.Point(116.403765, 39.914850);  // 建立點座標
  map.centerAndZoom(point,15);                        // 設定中心點座標,和地圖層級。更重要的是初始化地圖
  setTimeout(function(){
    map.panTo(new BMap.Point(116.409, 39.918));
  }, 2000);

</script>

因此,要想Anroid中能夠執行js效果更好,只能通過硬式編碼方式將資源放到html文本中:例如

background-image: url(data:image/gif;base64,AAAA) 方式表示一幅圖:

其中:

data: ----擷取資料類型名稱image/gif; -----指資料類型名稱base64 -----指編碼模式AAAAA ------指編碼以後的結果。
background-image: url(data:image/gif;base64,AAAA)這句話的意思總體就是“擷取資料類型是image gif檔案,編碼採用ASCII 字元,ASCII編碼內容是‘AAAA’”
圖片本身就已經以ASCII的形式存在了文檔中,只需要瀏覽器進行編譯就可以了。

同理:

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.