如何以编程方式从 WebView 对象中弹出 Webkit 的 Web Inspector?
如何以编程方式从 WebView 对象中弹出 Webkit 的 Web Inspector?
我成功了 在我的 WebView 上启用 Webkit 的 Web Inspector。 它运行良好,现在我可以通过单击上下文菜单上的“检查元素”来弹出它。 我想用我的按钮来做到这一点。但我找不到合适的方法来做到这一点。 我的 DOM 知识已经有 10 年了,对于当今的 HTML DOM 来说还是个新手。 有什么办法可以做到这一点吗?
我找到了一个类文档: 检查器控制器。我认为这是一种关键。但我不知道暴露了什么对象以及如何使用它。
环境:
- Mac OS X 10.6
- Xcode 3.2.1(iPhone SDK,无插件)
How can I pop up Webkit's Web Inspector from my WebView object programmatically?
I succeed to enable Webkit's Web Inspector on my WebView.
It's working well, and now I can pop it up by clicking "Inspect Element" on context menu.
And I want to do this with my push button. But I couldn't find a proper way to do this.
My DOM knowledge is 10 years old, very newbie on HTML DOM of nowadays.
Is there any way to do this?
I found a class document: InspectorController. I think this is a kind of key. But I cannot know what object exposes and how can I use this.
Environment:
- Mac OS X 10.6
- Xcode 3.2.1 (iPhone SDK, no plug-in)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这里有一些代码可以帮助您以编程方式从 cocoa 打开它:
要将其扩展到 dom,只需将此函数公开给 JS 即可。
Here's some code that should help you open it from cocoa programmatically:
To extend it to the dom, just expose this function to JS.
对于那些对 @alex MacCaw 的答案(它是 c++)感到困惑的人,这里有一个更“正常”的版本..
在您的
.m
文件中...声明 WebInspector 标头方法..然后在同一版本中文件,无论是您的应用程序委托,还是 WebView 子类,或者任何...声明一个 ivar 来“保存您的检查器,并使用您的 Web 视图实例或属性创建一个方法来打开它,或者任何。 ...
For those confused by @alex MacCaw's answer (it is c++), here is a more "normal" version..
in your
.m
file... declare the WebInspector header methods..Then in that same file, be it your app delegate, or WebView subclass, or whatever... declare an ivar to "hold your inspector, and make a method to open it, using YOUR web view instance or property, or whatever. ...
没有用于通过 DOM 或 Cocoa 与 WebInspector 交互的公共 API。您应该在 https://bugreport.apple.com/ 提交增强请求,请求使用此 API。
InspectorController 也是 WebInspector 的内部实现细节,它可能是文档网站上的一个错误。
There is no public API for interacting with the WebInspector via the DOM or Cocoa. You should file an enhancement request at https://bugreport.apple.com/ asking for this API.
InspectorController is also an internal implementation detail of the WebInspector and its likely a bug that its on the documentation website.