【发布时间】:2015-01-30 22:09:42
【问题描述】:
我试图让用户调整给定网页的文本大小。我在 Xcode 6 中使用 Swift。 HTML 文件:
<!DOCTYPE html>
<html>
<body>
<h1>My First Heading</h1>
My first paragraph.
</body>
</html>
这是我调用的 swift 函数来尝试更改大小:
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() 函数时,它起作用了。请帮我找出我的代码有什么问题!
【问题讨论】:
-
您首先在 textFontSizeTemp = defaults.objectForKey("textFontSize") 中将 textFontSizeTemp 的值读取为 Int,然后在您的 switch case 语句中增加它的大小。最终使用你在更新之前读取的值来设置字体大小,你确定这是你想要的吗?
-
不...我只是想弄清楚如何完成它。如果您能提出不同的方法,我会非常高兴。
-
只是想检查一下,你只是想增加字体大小对吗?
标签: javascript html ios swift uiwebview