.
.
.
<script>
function resizeFont(font_index) {
var arrFontSize = ["80%", "90%", "100%", "110%", "120%"];
var x = document.getElementsByTagName("SPAN");
for (var i = 0; i < x.length; i++) {
x[i].style.fontSize = arrFontSize[font_index];
}
}
</script>
The above function is to adjust the font of the page that shows the contents of the book.
override func viewDidLoad() {
super.viewDidLoad()
let webConfiguration = WKWebViewConfiguration()
let contentController = WKUserContentController()
contentController.add(self, name: "resizeFont")
webConfiguration.userContentController = contentController
webView = WKWebView(frame: self.containerView.frame, configuration: webConfiguration)
webView.uiDelegate = self
webView.navigationDelegate = self
self.view.addSubview(ebView)
}
extension SearchWVViewController: WKScriptMessageHandler {
func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) {
if let name = message.name as? String, name == "resizeFont" {
//code
}
}
The code above executes a function with no parameters to pass. But how do I execute a function while passing a font_index?