JavaFX WebView中的Html / Javascript调试 [英] Html/Javascript debugging in JavaFX WebView

查看:2424
本文介绍了JavaFX WebView中的Html / Javascript调试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有办法调试在Javafx WebView中执行的javascript和html?与Firebug或Chrome的开发者控制台类似的东西?



我有一个应用程序在Firefox和Chrome中呈现良好的效果,但在WebView中无法正确呈现。它真的可以是任何数量的东西,但没有一些调试工具,我不知道如何跟踪根本原因。



谢谢。

解决方案

这里是一些Java代码,可以在JavaFX WebView中使用Firebug Lite,而无需修改目标页面的html。

  webView.getEngine()。executeScript(if(!document.getElementById('FirebugLite')){E = document ['createElement'+'NS' ]&&  document.documentElement.namespaceURI; E = E?document ['createElement'+'NS'](E,'script'):document ['createElement']('script'); E ['setAttribute' ]('id','FirebugLite'); E ['setAttribute']('src','https://getfirebug.com/'+'firebug-lite.js'+'#startOpened'); E [ setAttribute']('FirebugLite','4');(document ['getElementsByTagName']('head')[0] || document ['getElementsByTagName']('body')[0])。appendChild(E) ; E = new Image; E ['setAttribut e']('src','https://getfirebug.com/'+'#startOpened');}); 

您可以使用JavaFX按钮或任何其他您希望的机制来触发代码。


Are there any ways to debug javascript and html that is executed within a Javafx WebView? Something similar to Firebug or Chrome's developer console?

I have an application that renders fine in Firefox and Chrome, but does not render correctly inside a WebView. It really could be any number of things, but without some debugging tools I don't know how to track down the root cause.

Thanks.

解决方案

Here is some Java code to make use of Firebug Lite in a JavaFX WebView without modifying the html of the target page.

webView.getEngine().executeScript("if (!document.getElementById('FirebugLite')){E = document['createElement' + 'NS'] && document.documentElement.namespaceURI;E = E ? document['createElement' + 'NS'](E, 'script') : document['createElement']('script');E['setAttribute']('id', 'FirebugLite');E['setAttribute']('src', 'https://getfirebug.com/' + 'firebug-lite.js' + '#startOpened');E['setAttribute']('FirebugLite', '4');(document['getElementsByTagName']('head')[0] || document['getElementsByTagName']('body')[0]).appendChild(E);E = new Image;E['setAttribute']('src', 'https://getfirebug.com/' + '#startOpened');}"); 

You can trigger the code using a JavaFX Button or any other mechanism you wish.

这篇关于JavaFX WebView中的Html / Javascript调试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆