[JavaFX] WebView関連のTIPS
JavaFXのWebView、こいつは使えるかもしれないぜ。。
右クリックのメニュー(Context Menu)を出なくする
webView.contextMenuEnabledProperty().setValue(false);
Javaから好きなスクリプトを実行する(またはwindowオブジェクトを取得)
JSObject obj = (JSObject)webView.getEngine().executeScript("window");
window.openでポップアップを出なくする
webView.getEngine().setCreatePopupHandler( new Callback<PopupFeatures,WebEngine>() {
@Override
public WebEngine call(PopupFeatures arg0) {
return null;
}
});
全てのAタグを取得する
Document doc = webView.getEngine().getDocument();
NodeList nodeList = doc.getElementsByTagName("a");
上で取得したElementにclickリスナーを貼る
for (int i = 0; i < nodeList.getLength(); i++) {
EventTarget t = (EventTarget) nodeList.item(i);
t.addEventListener("click", listener, false);
}
上で貼るリスナーの実装
EventListener listener = new EventListener() {
@Override
public void handleEvent(Event evt) {
String domEventType = evt.getType();
if (domEventType.equals("click")) {
Element el = (Element)evt.getCurrentTarget();
String href = el.getAttribute("href");
evt.preventDefault();
}
}
};
コメント
コメントを投稿