访问 DOM 个对象模型 JavascriptCore

Accessing DOM object model JavascriptCore

我有一段代码需要在 Objective-C 代码中访问 DOM 对象模型。我正在尝试执行一个假设 return 内容

的函数
    NSString *functionScr = [NSString stringWithFormat: @"var fPreset=\"%@\";"
"var addFavorite = function() {"
"   if (fPreset != '') {"
"        var ft = window.document.createElement('div');"
"        ft.innerHTML =  decodeURIComponent(fPreset);"
"        var f = ft.innerHTML;"
"        var bub = encodeURIComponent(f.childNodes[1]);"
"        return bub;"
"       }"
"   }",encodedHTML];

[context evaluateScript:functionScr];
JSValue *retVAL = [context evaluateScript:@"addFavorite();"];

执行时出现错误

ReferenceError: Can't find variable: window

如何访问 JavascriptCore 中的 window 对象?

这是不可能的:( DOM 和任何其他 window 属性 在 JavascriptCore 中不可用。 纯JS引擎

这对我有用

JSContext *context = [yourwebview valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
[context evaluateScript:yourfunctionScr];
JSValue *retVAL = [context evaluateScript:@"addFavorite();"];