我正在具有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/