gpt4 book ai didi

html - 如何在 Swift 中使用 TFHpple 更改 HTML 中的属性

转载 作者:行者123 更新时间:2023-11-28 06:52:56 30 4
gpt4 key购买 nike

我有一个 HTML 字符串,想更改其中的元素,在 img 标记样式中将宽度 = 100% 和高度设为自动,这样当我将它们传递到 Web View 时,图像可以适应 super View 布局。

HTML

<img alt=\"\" src=\"https://my.domain.com/img/ckeditor/55de838089041.jpg\" style=\"width:700px\" />

swift

let doc : TFHpple = TFHpple(HTMLData: htmlText.dataUsingEncoding(NSUTF8StringEncoding))
for img: AnyObject in doc.searchWithXPathQuery("//img") {
let imgElement : TFHppleElement = img as! TFHppleElement
let attributes : [NSObject : AnyObject] = imgElement.attributes
XCGLogger.defaultInstance().debug("attributes: \(attributes)")
for eachElement : (NSObject, AnyObject) in attributes {
if eachElement.0 == "style" {
var elementText : String = eachElement.1 as! String
eachElement.1 = "width:'100%',height:'auto'"
}
}
}

但是eachElement.1是不可编辑的,我可以用TFHpple吗1这样做,或者必须尝试其他方式。

最佳答案

遇到类似的问题,我编辑了从 HMTL 响应中获得的整个字符串,因此您可以尝试这样的操作:-

    let task = try session.dataTaskWithRequest(request, completionHandler: {data, response, error -> Void in
guard data != nil else {
print("no data found: \(error)")
self.displayServerAlert()
return
}
print("Response: \(response)")

var strData:String = NSString(data: data!, encoding: NSUTF8StringEncoding) as! String
print("Body: \(strData)")

var replaceStr = strData.stringByReplacingOccurrencesOfString("style=\"width:700px\", withString: "style=\"width:'100%',height:'auto'", options: NSStringCompareOptions.LiteralSearch, range: nil)

print(replaceStr)
let strtoData = replaceStr.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true)


self.parseData(strtoData!)

parseData 是 fucn,我根据需要将数据发送到这里进行解析..!!希望这有帮助..!!

关于html - 如何在 Swift 中使用 TFHpple 更改 HTML 中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34433589/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com