使用WKWebView的一個問題:iOS中使用本地html的一個大坑
為了測試WKWebView中JS和native程式碼的互動功能,所以本地寫了簡單的HTML程式碼
就是響應一個button的點選事件,和WKWebView互動, 正確寫法如下:
在實際過程中,由於中英文沒切換正確,本應該英文的括號寫成了中文的括號
編譯、連結生成App執行,沒有一點錯誤提示,唯一的現象就是點選按鈕後App沒有任何互動行為,這是弄啥呢?
還以為是程式碼邏輯書寫的錯誤,檢查WKWebView有關的各種呼叫,包括也HTML的程式碼,就是沒有發現括號的問題,坑爹呀,像這種明顯的HTML格式 錯誤,至少應該提示一下呀。
safari的web偵錯程式倒是提示了一個錯誤,但跟實際HTML程式碼的錯誤風馬牛不相及啊,反而形成誤導。
最後一個偶然的機會,把這段錯誤的HTML程式碼和網上找到的一段正確HTML程式碼放在比較工具中,才發現了問題的所在
相關推薦
通過iframe引入另外一個專案中的html片段到專案中,解決樣式,高度,相容等問題的策略
<!--尾部開始--> <iframe src="http://172.16.24.11:9000/cartoon-web/footer_new" marginheight=
一個頁面中引入另一個html頁面的方法
在實際專案中,有時候需要在一塊內容中引入另一個頁面的html.當然引入另一個頁面的html有幾種方法 這裡介紹的是使用jquery,來達到 首頁在需要引入的區域給個id例如<div id="demo1"></div> 然後接下來在 <scrip
一位從vb系轉到JAVA的朋友在一個類中寫了一個類似VB中MSGBOX的方法
fin return gen interface man text string listener com //此方法放一個自定義的JAVA類中 public static boolean msgBoxPlus(Activity objPage, String strTi
PHP在一個框架中使用另一個框架
code main 中新 rul con .htaccess lena you 瀏覽器 在當前框架中新建一個文件夾lee: mkdir lee 進入lee: cd lee 引入框架: composer create-project 寫rewrite文件:vim .
安卓的資料共享——從一個APP中呼叫另一個APP資料的方法
在Android中如何在一個APP中呼叫另一個APP中的資料呢?大致有以下五種方法可以實現 1、首選項資訊-Shared Preferences 2、檔案 3、SQLite 4、Content Provider 5、廣播 下來對上述的五種方法進行詳細的解析: 1、首先對
python在一個字串中找到另外一個字串並找到該字元起始的位置
程式碼詳解 def index_of_str(seq, sub_seq): index=[] n1=len(seq) n2=len(sub_seq) for i i
網頁的一個頁面中顯示另一個頁面
1、定義 內聯框架:HTML內聯框架是為了實現在網頁中顯示網頁,突出了內聯二字,就是在一個網頁中,我們能夠控制在這個網頁中用多大的框去顯示另外一個網頁,並且能通過CSS對其進行控制。 2、兩種應用場景: (1)固定右側或左側按鈕,修改另一側或網頁中某個部分的內容 (2
如何使用spring容器在一個類中呼叫另一個類的方法。
學了spring容器之後,最基本的就是這個在一個類中呼叫另一個類中的方法了。本文講述的就是如何使用spring容器從一個類呼叫另一個類的方法。首先,我們先新建一個Student類,在類中建立一個int型別的方法。如圖: 第一個類Student就完成了,那麼我們
c#在一個視窗中開啟另一個視窗
1、今天功能需要,開啟新的視窗,這裡簡單記錄下2、實現機制,在主程式開啟第一個視窗,在第一個窗口裡面寫入觸發事件,開啟另一個視窗,並隱藏當前視窗3、實現程式碼段 建立兩個視窗 分別為 setParams 和 main 在主程式中預設開啟setParams視窗
c#裡用一個視窗中載入另一個視窗的方法
不囉嗦,直接上程式碼,主窗體用一個public_panel來放另一個窗體AntennaCheck(窗體名),放在任意的地方,可以用button觸發,也可以在載入主窗體的時候同時出現,有人或許會問,為什麼要增加一個窗體,懟他曰:程式碼號管理唄! An
jQuery 獲取遍歷獲取table中每一個tr中的第一個td
<tbody id="already_question_list"> <tr> <td><?php echo $val['unique_number']
iOS 載入本地HTML,css,js
將HTML,css和js檔案拖入工程。 按照如下方式新增程式碼 WKWebView *webView = [[WKWebView alloc] initWithFrame:[UIScreen
ios載入本地html,css樣式失效問題
專案中需要載入本地的html,在新增到工程中時,發現不顯示本地的資源圖片檔案,而且樣式也跟瀏覽器開啟的不一樣。初步判斷是資源路徑讀取的問題。 鑑於iOS沙盒機制的問題,這些資原始檔在編譯過程中,都被儲存到同一資源路徑下了。所以就需要我們修改html中圖片資源的讀取
iOS載入本地html,css樣式失效問題
檔案拖入專案的時候選的 這樣的話,檔案在編譯成 ipa 的時候。檔案會拷貝到根目錄下。而程式碼中是這樣寫的, NSString *filePath = [[NSBundle mainBundle] pathForResource:@"protocol" ofType:
在一個專案中引用另一個專案中的類
在A專案上新增引用,比如你想呼叫B專案的一些類或方法, 在A專案上右鍵-->新增引用(add reference) 選擇本地專案,找到B專案後,新增引用. 程式中使用using B 這樣就可以使用B中的類和方法了.
WKWebView和UIWebView載入本地html和JS互動各種坑解決辦法
因為蘋果的檔案機制,所有的資原始檔都相當於放在bundle的路徑裡,裡面不分任何資料夾路徑,所以我們在載入(js, css, png)等等的資原始檔的時候,不應該加上任何檔名,所以最好是把所有有關html的檔案都放在同一平級的資料夾 UIWebView 1.OC調JS
python 中,如何在一個函式中呼叫另一個函式返回的多個值中的一個?
在一個函式中呼叫另一個函式返回的多個值中的一個 首先,定義了一個函式 。 程式碼如下: def createDataSet(): group = array([[1.0,1.1],[1
Java中在一個方法中呼叫另一個方法
在同一個類中: 對於靜態方法,其他的靜態或非靜態方法都可以直接呼叫它。 而對於非靜態方法,其他的非靜態方法是可以直接呼叫它的。但是其他靜態方法只有通過物件才能呼叫它。 靜態方法不能被非靜態方法覆蓋。 public class Test2 { public static v
C語言學習筆記----伊能C語言學習筆記----如何在一個檔案中使用另一個檔案中定義的變數呢??
我們知道,一個大的程式,會由多個c檔案構成,這些c檔案是屬於同一個程式的。 那麼,如何在一個檔案中使用另一個檔案中定義的變數呢?? 解答: C語言為了解決這個問題:引出了 全域性作用域的概念 即: 在一個檔案中定義的全域性變數,具有全域性
android 在一個應用中啟動另一個應用
在程式開發過程當中,常遇到需要啟動另一個應用程式的情況,比如在點選軟體的一個按鈕可以開啟地圖軟體。 如果既有包名又有主類的名字,那就好 辦了, 直接像下面就行: [html] Intent intent = new Intent(Intent.ACTION_MAIN