如何使用phantomJs滚动页面

And*_*rle 4 phantomjs

我想渲染一个只在用户滚动页面时加载其图像的页面.只是设置page.scrollPosition没有效果.我需要一些随着时间的推移改变滚动位置的东西.

And*_*rle 8

不确定这是否是最好的方式,但它的工作原理.它会评估页面中的脚本,该脚本会document.body.scrollTop随着时间的推移而增加,并在固定时间后制作屏幕截图.

page.open "http://www.somePage.com", (status) ->
      setTimeout(( ->
        page.evaluate(->
          pos = 0
          scroll = ->
            pos += 250
            window.document.body.scrollTop = pos
            setTimeout(scroll, 100)

          scroll()
        )

        setTimeout((->
          page.render('bild.png')
          phantom.exit()
        ), 5000)
      ), 1000)
Run Code Online (Sandbox Code Playgroud)