我正在從UIWebView中的服務器加載HTML文件文件。在HTML文件中,我們有打開的外部鏈接,並且編寫了一個Javascript函數來處理這些事件。我想在應用程序內的單獨新web視圖中打開該超鏈接。從javascript到objective-C的通信
有沒有什麼辦法,服務器端JavaScript方法通知Objective-C或任何回調函數將調用Objective-C,然後我可以做我的代碼someting?我已經看到了WEBViewJavaScriptBridge在JavaScript和Objective C之間進行通信的例子,但它們使用本地HTML文件來加載和通信。我的HTML文件在服務器端。如果有人能夠幫助解決這個問題,那將是非常棒的。
我在這裏推廣一個示例HTML文件。我們有兩個超鏈接「打開」和「關閉」在打開按鈕上打開一個功能被稱爲顯示警報。所以而不是警報我想通過retuen回調到客觀C代碼。
這就是: -
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width = device-width, initial-scale = 1.0, maximum-scale = 1.0, minimum-scale = 1.0, user-scalable=no"/>
<meta name="HandheldFriendly" content="True"/>
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<title>Test HTML</title>
<script type="text/javascript">
function open(url, offset){
alert("Open Webview with url:"+ url + " & Offset: " + offset);
}
function close(url, offset){
alert("close webview");
}
</script>
</head>
<body>
<a href="javascript:open('http://www.tcm.com', '55')">Open</a><br>
<a href="javascript:close()">Close</a>
</body>
</html>
我怎麼可以獎勵或者接受那些? –
@SandeepDhama,點擊這些答案旁邊的勾號標記爲正確答案。如果您在同一個問題中找到更多有用的答案,您可以點擊答案旁邊的向上箭頭進行點贊。 – iDev
檢查它是否在調用委託方法'webView:shouldStartLoadWithRequest:navigationType:'。如果是的話,你需要在這裏實現它。 – iDev