我试图让用户调整给定网页的文本大小。我在 Xcode 6 中使用 Swift。
HTML 文件:
<!DOCTYPE html>
<html>
<body>
<h1>My First Heading</h1>
My first paragraph.
</body>
</html>
这是我调用的快速函数来尝试更改大小:
func changeWebViewFontSize(decOrInc: Int, webView: UIWebView)
{
//1 = decreace
//2 = increace
var textFontSizeTemp = defaults.objectForKey("textFontSize") as Int
switch decOrInc
{
case 1: //when decrease
defaults.setObject(textFontSizeTemp - 1, forKey: "textFontSize")
case 2: //when increase
defaults.setObject(textFontSizeTemp + 50, forKey: "textFontSize")
default:
break
}
var jsString = "document.getElementsByTagName('body')[0].style.webkitTextSizeAdjust=\(textFontSize)"
//var jsString = "alert('test')"
webView.stringByEvaluatingJavaScriptFromString(jsString)
}
我知道 javascript 正在运行,因为当我在 javascript 中运行alert() 函数时,它起作用了。请帮我找出我的代码有什么问题!
我写了一个这样的例子,它调整字体大小(点击按钮时增加大小):
class webViewController: UIViewController {
@IBOutlet weak var webView: UIWebView!
@IBOutlet weak var increase: UIButton!
var defaults = ["textFontSize":12]
@IBAction func btnIncreaseTapped(sender: AnyObject) {
changeWebViewFontSize(2,webView: webView)
}
override func viewDidLoad() {
super.viewDidLoad()
let url = NSURL(string: "http://stackoverflow.com/questions/28245483/resizing-uiwebview-text/28245982?noredirect=1#comment44873831_28245982")
let urlRequest = NSURLRequest(URL: url!)
webView.loadRequest(urlRequest)
}
func changeWebViewFontSize(decOrInc: Int, webView: UIWebView)
{
//1 = decreace
//2 = increace
var textFontSizeTemp = defaults["textFontSize"]! as Int
switch decOrInc
{
case 1: //when decrease
textFontSizeTemp = textFontSizeTemp - 1
case 2: //when increase
textFontSizeTemp = textFontSizeTemp + 50
default:
break
}
defaults["textFontSize"] = textFontSizeTemp
var jsString = "document.getElementsByTagName('body')[0].style.fontSize='\(textFontSizeTemp)px'"
webView.stringByEvaluatingJavaScriptFromString(jsString)
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)