我正在为iPhone开发一个应用程序,希望它将使用添加到iOS 7的新JavaScriptCore
框架。我使用的是javascript,因为我需要向我的项目中添加一个javascript库citeproc-js。我可以通过将其加载到UIWebView
中来启动并运行该库,但是我需要从后台线程使用它,因此我试图将其加载到JSContext
中。
我遇到的问题是该库依赖于使用DOMParser
的webkit
,但是当将框架加载到JSContext
中时,解析器从不加载。
是否应该可以从DOMParser
访问JSContext
?如果没有,还有其他选择吗?
谢谢!
最佳答案
JSContext提供的JavaScript API实际上是该语言的核心API-它甚至缺少console.log和setTimeout之类的东西,因为它们是由浏览器提供的。由于DOMParser是JavaScriptCore之外定义的另一个API,因此不应在JSContext中对其进行访问。
您可以做的是通过TBXML机制将本地XML解析器(如JSExport)公开给JSContext并使用它。