如何使用JavaScript更改UIWebView字体?

时间:2015-10-01 09:28:32

标签: javascript ios swift uiwebview

我想知道如何使用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部分做错了。

1 个答案:

答案 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