- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
过去我使用 JEditorPane,现在我正在尽我最大的努力使用 JavaFX WebEngine。如何为显示页面上包含超链接的事件注册监听器(例如链接选择或单击链接)?
在 JEditorPane 中有 addHyperlinkListener 方法...
编辑:
我听从了第一个答案中的建议。这是我的代码:
webEngine.getLoadWorker().stateProperty().addListener(new ChangeListener<State>() {
public void changed(ObservableValue ov, State oldState, State newState) {
if (newState == Worker.State.SUCCEEDED) {
// note next classes are from org.w3c.dom domain
EventListener listener = new EventListener() {
public void handleEvent(Event ev) {
System.out.println("KLIKNIETO!!!");
}
};
Document doc = webEngine.getDocument();
Element el = doc.getElementById("a");
NodeList lista = doc.getElementsByTagName("a");
System.out.println("Liczba elementow: "+ lista.getLength());
for (int i=0; i<lista.getLength(); i++)
((EventTarget)lista.item(i)).addEventListener("click", listener, false);
}
}
});
我现在在点击链接后收到事件。但是我需要获得对单击链接的引用(以获取其内容)。我怎样才能做到这一点?
最佳答案
你在哪里
System.out.println("KLIKNIETO!!!");
替换为
String href = ((Element)ev.getTarget()).getAttribute("href");
获取点击链接的 URL。
此页面很好地说明了您正在尝试执行的操作:
http://blogs.kiyut.com/tonny/2013/07/30/javafx-webview-addhyperlinklistener
关于java - JavaFX WebEngine 中的 HyperlinkListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17555937/
问题: 当我将文本 Pane 的 contentType 保留为 text/html 时,键入的文本会向右移动,例如:如果键入“asd”,则“消息:”会出现在左侧,“asd”出现在文本 Pane 的右
我正在尝试实现带有超链接的 JEditorPane。我正在使用 HyperLinkListener,但它似乎永远不会触发。 代码: JEditorPane editorPane = new JEdit
JEditorPane editorPane; editorPane.addHyperlinkListener(...) 如果 editorPane 设置为 setEditable(true), 不会
我有一个带有 HyperLinkListener 的 JTextPane m_textPane.addHyperlinkListener(new HyperlinkListener() {
过去我使用 JEditorPane,现在我正在尽力使用 JavaFX WebEngine。如何注册所显示页面上包含超链接的事件的监听器(例如链接选择或单击链接)? 在 JEditorPane 中有 a
过去我使用 JEditorPane,现在我正在尽我最大的努力使用 JavaFX WebEngine。如何为显示页面上包含超链接的事件注册监听器(例如链接选择或单击链接)? 在 JEditorPane
您好,我在从使用 HyperlinkListener 在 HTML 中设置的 JEditorPane 获取 URL 时遇到问题,我已经检查了很多关于这个问题的堆栈问题,但似乎没有一个能解决它,我已经减
这里的第一篇文章对我的英语感到抱歉,这不是我的母语。我无法找到以下代码的错误。 我试图让第一个JeditorPane在单击提交后向我发送4个复选框的值,然后使用choosePage()的结果更改内容
我正在开发一个帮助窗口,在该窗口中我使用 jsoup 将 HTML 文件解析到 JSplitPane 右侧的 JEditorPane。 HTML 文件有一个内容页面,我成功地使用 HyperlinkL
我有一个正在构建的 Java Swing 应用程序。我在其中创建了一个 JTextPane (displayPane),我已将其设置为接收 HTML 格式的文本。我希望 HTML 有点动态,用户可以单
我是一名优秀的程序员,十分优秀!