我正在具有WKwebview的IOs应用程序上工作,我将配置设置为注入.js文件。

这是我的JavaScript文件。

var User = ""
var Pass = ""

document.getElementsByName('username')[0].value = User
document.getElementsByName('password')[0].value = password
submitButton()

现在,当我事先给变量赋值时,代码可以完美运行。
但是我稍后试图从NSUserDefualts更改User和Pass的值,但是我不知道从哪里开始。

我尝试在没有帮助的情况下使用javascript框架。

任何想法或方向将不胜感激。

谢谢

最佳答案

我设法解决了问题,但没有通过注入javascriptfile路径,而是通过在NSUserDefaults中保存用户并传递变量并从UIViewController内部的方法运行javascript来解决此问题

代码不是很漂亮,但是可以正常工作,看起来像这样:

// the passed would be stored in NSUserDefaults

let passwd = "test"

// passEdited simply adds ' ' to the passwd you can just add them to the passwd variable but i like to see every step i am taking
let passEdited = "'" + passwd  +"'"

// this is the actual java code i would like to run
var passJS = "document.getElementByName('password')[0].value =" + passEdited

// check for correct Url before running the java code
if webView.URL?.absoluteString == "www.YOURWEBSITE" {
webView.evaluteJavaScript(passJS, completionHandler: nil)

关于ios - Swift…在运行时更改.js文件的变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28381904/

10-12 00:32
查看更多