javascript - SWT 浏览器不使用 D3 显示页面
问题描述
我想在 SWT 浏览器中显示一个使用 D3 的 html 页面。
如果我加载一个 URL,就像www.google.com
它正确加载并允许我搜索等。如果我尝试加载一个包含 D3 的页面,我发现什么都没有显示,也没有输出错误。
例子
public class D3BrowserExample {
public static void main(String args[]) {
Display display = new Display();
final Shell shell = new Shell(display, SWT.SHELL_TRIM);
shell.setLayout(new FillLayout());
Browser browser = new Browser(shell, SWT.NONE);
browser.addTitleListener(new TitleListener() {
@Override
public void changed(TitleEvent event) {
shell.setText(event.title);
}
});
browser.setBounds(0, 0, 1200, 900);
shell.pack();
shell.open();
browser.setJavascriptEnabled(true);
browser.setUrl("https://observablehq.com/@d3/force-directed-graph");
browser.addProgressListener(new ProgressListener() {
@Override
public void completed(ProgressEvent event) {
System.out.println("Page loaded");
}
@Override
public void changed(ProgressEvent event) {
}
});
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
}
}
是否可以使用 SWT 浏览器执行 D3?另外,如何获取 Javascript 输出来调试问题?
更新
我已经在另一台装有 SWT 4.3 版的 Windows 10 PC 上尝试过这个。complete
为进度侦听器调用该方法,但没有显示任何内容。
Eclipse Bugzilla
解决方案
推荐阅读
- php - file_get_contents 没有获得所有内容
- http - SAML 从哪里获得额外的 PF 值
- php - 查询字符串为codeigniter中的所有方法创建问题
- javascript - 命名异步函数导致“task.apply 不是函数”
- python - 为什么 list() == 1 给出结果,而 list() > 1 是错误?
- java - 从另一个类中处理 JDialog
- javascript - Socket.io - 如何以与 JS 代码相同的方式发出 Kotlin 对象?
- php - 如何通过php获取div中的变量内容?
- javascript - 如何根据第一个输入返回一个输入并在表单上设置另一个输入的值?
- php - 为什么我的 ajax 请求不发送到书面 url?