【发布时间】:2016-03-29 18:21:52
【问题描述】:
我有一个 HTML 字符串,想将其中的元素更改为 img 标记样式为 width = 100% 和 height auto,这样当我将它们传递到 web 视图时,图像可以适合超级视图布局。
HTML
<img alt=\"\" src=\"https://my.domain.com/img/ckeditor/55de838089041.jpg\" style=\"width:700px\" />
斯威夫特
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 这样做,还是必须尝试其他方式。
【问题讨论】: