1. 程式人生 > >ios webview與JS的互動

ios webview與JS的互動

最近寫了一個與JS互動的程式,瞭解了下HTML ,HTML DOM,JS相關的知識

1.什麼是 DOM?

通過 JavaScript,您可以重構整個 HTML 文件。您可以新增、移除、改變或重排頁面上的專案。

要改變頁面的某個東西,JavaScript 就需要獲得對 HTML 文件中所有元素進行訪問的入口。這個入口,連同對 HTML 元素進行新增、移動、改變或移除的方法和屬性,都是通過文件物件模型來獲得的(DOM)。

在 1998 年,W3C 釋出了第一級的 DOM 規範。這個規範允許訪問和操作 HTML 頁面中的每一個單獨的元素。

所有的瀏覽器都執行了這個標準,因此,DOM 的相容性問題也幾乎難覓蹤影了。

DOM 可被 JavaScript 用來讀取、改變 HTML、XHTML 以及 XML 文件。

DOM 被分為不同的部分(核心、XML及HTML)和級別(DOM Level 1/2/3):

Core DOM
定義了一套標準的針對任何結構化文件的物件
定義了一套標準的針對 XML 文件的物件
HTML DOM

定義了一套標準的針對 HTML 文件的物件。

2.通過DOM,訪問HTML文件中的節點

getElementById() 和 getElementsByTagName()

getElementById() 和 getElementsByTagName() 這兩種方法,可查詢整個 HTML 文件中的任何 HTML 元素。

3.IOS中webview與JS互動的程式碼

    [webView stringByEvaluatingJavaScriptFromString:@"var script = document.createElement('script');"
         "script.type = 'text/javascript';"
         "script.text = \"function myFunction() { "
         "var field = document.getElementsByName('word')[0];"
         "field.value='測試';"
         "document.forms[0].submit();"
         "}\";"
         "document.getElementsByTagName('head')[0].appendChild(script);"];
        [webView stringByEvaluatingJavaScriptFromString:@"myFunction();"]; 

上面的程式碼是把JS程式碼寫入到html網頁中,然後執行函式,實現JS中的功能。

通過  stringByEvaluatingJavaScriptFromString 函式,可以實現webview強大的互動功能

4.整合了HTML、HTML DOM、JS、IOS 這四塊的知識,JS需要重點加強

5.資料來源:

5.1 HTML知識: http://www.w3school.com.cn/h.asp

5.2 HTML DOM 知識:http://www.w3school.com.cn/htmldom/index.asp

相關推薦

ios webviewJS互動

最近寫了一個與JS互動的程式,瞭解了下HTML ,HTML DOM,JS相關的知識 1.什麼是 DOM? 通過 JavaScript,您可以重構整個 HTML 文件。您可以新增、移除、改變或重排頁面上的專案。 要改變頁面的某個東西,JavaScript 就需要獲

Android之webViewjs互動

一、java呼叫js操作: 1.佈局檔案: <WebView android:id="@+id/web" android:layout_width="match_parent" android:layout_height="mat

解決Android簽名混淆後WebViewJS互動失效的問題

最近做了個網頁端微信支付的小功能,測試版還好好的,混淆打包後,寫的方法webview無法呼叫,意識到混淆除了問題,於是在網上找了一些大神的解決方案,再根據自己的實際解決過程,列出來一個完整的解決方法。 Android4.2以上版本呼叫js介面需要在方法使用宣告@JavascriptInterfa

WebViewJs互動所有方法及使用

首先 你肯定要定義,初始化一個webview,其實網上的例子很多,我這裡就簡單的把一些WebView 中可能會用到的的很重要的屬性以及支援全屏播放視訊該怎麼實現的程式碼粘出來,直接放到專案中去就行了 [java] view plaincopy <span style=

Android筆記之 WebviewJs互動-詳情舉例

Android呼叫網頁自身Js 你好! 這是你第一次使用 Markdown編輯器 所展示的歡迎頁。如果你想學習如何使用Markdown編輯器, 可以仔細閱讀這篇文章,瞭解一下Markdown的基本語法知識。 本地(asset)網頁androidcalljs.h

Webviewjs互動

public class MainActivity extends AppCompatActivity implements View.OnClickListener { private EditText ed; private Button btn; priva

Android中Webviewjs互動

1.js呼叫Android程式碼Android端:webView.addJavascriptInterface(new WebHost(this),"js");向WebView註冊一個名叫“js”的物件,然後在JS中可以訪問js這個物件,呼叫這個物件裡的一些方法。 publi

webviewjs互動在targetsdkversion設定為19的時候出現的問題

轉自:http://blog.csdn.net/kaka123ac/article/details/42871441 1.在WebView中呼叫js,在4.4(target = 19)之前,只有一種方法:      呼叫js方法 test()     webView.lo

Android WebViewJS互動及訊息處理

一、WebView與JS互動 1.JS呼叫本地方法 這個功能的實現還是比較容易的。直接呼叫WebView的該方法就可以新增介面了,不過先要啟動互動 ? 1 2 3 4 // 啟用javascript  mWebView.getSettin

Android webViewjs 互動以及jsbridge框架原始碼分析

1.簡單篇 如何實現簡單的android 呼叫js 與js呼叫android 讓webview做一下操作 private void init(Context context){ WebSettings setting =

WebViewJS互動不會執行onPageFinished() -WebView(WebKit)

WebView sample: https://github.com/GoogleChrome/chromium-webview-samples Android WebView 在開發過程中有哪些坑?->https://www.zhihu.com/question/3

Android webviewjs互動上傳圖片

最近專案中用到webview,並且有上傳圖片功能,iOS不用做任何處理,但Android就不行了,調不到相簿,後百度才知道這是Android webview的侷限性,需要自己擴充套件WebChromeClient來實現,話不多說直接上程式碼: 第一步:擴充套件WebChro

webView js互動方法(參考文獻)

1.下載示例 http://code4app.com/ios/webview-%E5%8A%A0%E8%BD%BDcss-js-%E6%96%87%E4%BB%B6/4fcd84186803fa6645000000 <script type = "text/javas

iOS WebViewNative互動

我們在專案中不可避免的要使用到WebView,一般的用法就是WebView直接載入URL,做一些基本展示操作。但是對於一些特定的需求或邏輯,我們可能就需要WebView傳遞一些資料到Native,由Native來對資料做處理,比如有跨域限制或攔截WebView請

iOS webviewjs 互動

1.先上一段 html 程式碼 <html> <head> <meta http-equiv="Content-Type"content="text/html; charset=utf8"> </head> &l

iOSjs互動(WebView+WKWebView)

需求:1點選js登入按鈕將使用者賬號和密碼傳給移動端             2將客戶端的token傳給html端 據我瞭解有以下幾種方法 1:webview的javascriptCore 2:webkit 3:url攔截 4:第三方庫 我用的是1和2

iOS原生程式碼通過webViewjs指令碼互動

  前段時間公司的一個專案需要使用的到OC程式碼與js指令碼的互動。對於入行不久的我,當時也是在部落格裡面爬文來解決。做下來之後把我自己通過實踐和學習得來的東西整理一下,以便在這方面接觸不多的人能夠快速的掌握OC與js的互動。新手教程,大神勿噴,如有錯誤,多多指教。    

iOSJS互動的4種方法

iOS與JS互動的方法: 1.攔截url(適用於UIWebView和WKWebView) 2.JavaScriptCore(只適用於UIWebView,iOS7+) 3.WKScriptMessageHandler(只適用於WKWebView,iOS8+) 4.WebViewJ

Swift WKWebView(二):iOSjs互動

在上一篇中我們介紹了Swift下WKWebView的基本使用方法,下面總結一下iOS與js互動的實現,最終的頁面效果如下圖所示: 其中,js有關程式碼如下: function navButtonAction(name,age){

Android開發之Webview中原生JS互動

文章目錄 概述 使用場景 互動方式 Java呼叫JS程式碼 JS呼叫Java程式碼 總結 概述 由於手機硬體資源的快速提升,使得采用混合開發的可能性逐漸成為現實並且流行起來。Android開發中