2016-06-23 140 views
0

我有HTML字符串,我在UIWebView中打開它。現在,我想讓我的所有圖片可點擊,將它們放到象鏈接標籤:如何將HTML字符串中的所有img標籤替換爲<a><img></a>?

那句話:

<img src="..." /> 

變成了:

<a href="..."><img src="..." /></a> 

有沒有簡單的解決辦法嗎?

我試圖找到所有的標籤,並將其替換爲字符串內部,但它非常痛苦。

我已經試過了:

let js = "var a=document.createElement('a');a.href='http://mylink.com';var image = document.getElementById('mydiv').getElementsByTagName('img')[0];b=a.appendChild(image);document.getElementById('mydiv').appendChild(a);" 

self.webView.stringByEvaluatingJavaScriptFromString(js) 

但它並沒有幫助我

+0

如何在頁面中注入JavaScript鏈接,並使用JavaScript代碼來操縱dom?如果在該腳本中使用jquery,則可以使用$ .wrap函數 – CodeToad

+0

@CodeToad請看我的問題。我已經添加了我的JS代碼 – John

+0

在頁面上有jquery嗎? – CodeToad

回答

1

簡短的回答:不,這不是一個簡單的解決方案。不要這樣做。嘗試解析和更改來自客戶端應用程序的HTML源代碼是一個可怕的想法,並且總是非常痛苦。這就像試圖用鋸齒,鏡子和一些舊的牙科工具對自己進行腦部手術。

+0

是的,我知道,但我想使我的圖像內UIWebView點擊,並點擊我打開這些圖像的畫廊。你有什麼建議嗎? – John

+0

我建議你不要做你正在計劃的事情。如果不這樣做,手頭上有許多頭痛藥物,並準備一個非常脆弱的應用程序,你必須不斷調整以適應從不同網站獲得的幾乎無限的HTML代碼版本。 –

相關問題