我正在与WKTHMTOPDF合作并真正享受它。但是,正在转换的页面具有谷歌地图,生成的PDF随地图一半加载出来。我知道有一个选项可以在之前的版本中添加--javascript - 延迟,但它会显示已被弃用。我使用的是0.99版本。请帮忙。谢谢。wkhtmltopdf javascript延迟
4
A
回答
4
--javascript-delay选项根本不被弃用。另外,建议升级到最新版本 - 0.9.9是一个非常旧的版本。
7
可以使用wkhtmltopdf版本0.12.0
我也使用在一些网站的javascript高的内容。以前,它不能在0.99版本中正确渲染,但是当我使用版本0.12并使用选项--javascript-delay
时,一切都很正常。
您可以添加其他选项过于完美即加载你的JavaScript --enable-javascript
,--no-stop-slow-scripts
等
确保您在使用--javascript延迟使用正确的时间延迟,这取决于你的网站是多少它需要渲染的时间。如果你会使用更多的时间延迟,那么它会需要更多的时间来执行,如果你将采取更少的时间延迟,那么JavaScript将不会被正确加载。
The link to latest version of wkhtmltopdf
15
有另一更好的方法可以做到这一点并不需要使用--javascript - 延迟(并具有不要求你设置的延迟时间的好处,你知道什么之前所需的延迟实际上会是)。
回调添加到 'tileloaded' 事件:
google.maps.event.addListenerOnce(map, 'tilesloaded', function(){
window.status = 'ready_to_print';
});
然后调用wkhtmltopdf设置为 'ready_to_print' 例如在--window.status选项
wkhtmltopdf --window-status ready_to_print map.html map.pdf
很明显,你可以改变字符串“ready_to_print”是你要这么久不管是window.status已经不等于该值时wkhtmltopdf被调用,上面的代码触发之前。
类似的方法可以与谷歌图表一起使用,尽管相应的事件会以不同的名称出现。
相关问题
- 1. 延迟的Javascript
- 2. 延迟onmouseover javascript
- 3. Javascript延迟
- 4. Javascript skrollr延迟
- 5. 延迟的Javascript
- 6. JavaScript addEventListener延迟
- 7. Javascript延迟事件
- 8. javascript延迟弹出
- 9. 延迟使用Javascript
- 10. javascript延迟输出
- 11. 关于javascript延迟
- 12. 延迟加载Javascript
- 13. Javascript功能延迟
- 14. 延迟JavaScript代码
- 15. JavaScript时间延迟
- 16. Phantomjs和延迟javascript
- 17. Javascript超时延迟
- 18. 用javascript屏幕拖延网站延迟
- 19. JavaScript不需要的延迟?
- 20. 延迟在javascript调试
- 21. Javascript代码执行延迟
- 22. Drupal的形式JavaScript延迟
- 23. 下拉菜单JavaScript延迟
- 24. Javascript延迟图像加载
- 25. 延迟激活JavaScript控件
- 26. 使用javascript延迟与document.write
- 27. 需要Javascript循环延迟
- 28. 304延迟vs内嵌javascript
- 29. javascript scroll上的延迟 - Chrome
- 30. 的环路延迟在JavaScript