我想知道如何使用JavaScript更改字体。
虽然这个:
let fontName = "AmericanTypewriter-CondensedBold"
if let infoString = config.textAboutApplication {
infoView.loadHTMLString(NSString(format: "<div style='text-align:left;font-family:%@'>%@<div>", fontName, infoString) as String, baseURL: nil)
}
使用格式化文本生成正确的结果,JavaScript版本不会:
func webViewDidFinishLoad(webView: UIWebView)
{
let fontName = "AmericanTypewriter-CondensedBold"
let jsString = NSString(format: "document.getElementById('p').style.fontFamily = '%@'", fontName)
webView.stringByEvaluatingJavaScriptFromString(jsString as String)
}
HTML文本里面有p
标记和文本,所以我可能在JavaScript部分做错了。
答案 0 :(得分:0)
好的,我正在尝试的东西,JavaScript不是我最强的东西,这是有效的
let fontName = "AmericanTypewriter-CondensedBold"
let jsString = NSString(format: "document.getElementsByTagName('p')[0].style.fontFamily = '%@'", fontName)
let js = webView.stringByEvaluatingJavaScriptFromString(jsString as String)
编辑:我对这个凌乱的解决方案进行了自定义实现,使其更加酷炫。 :) https://github.com/Vanyaslav/Swiftyyjsformatter