您可以使用getImageData()函数在画布图像上采样像素颜色数据。如果我在背景图像或Flash影片上覆盖一个透明的画布元素,那么我是否可以通过canvas标签从中采样一种颜色?
Phil说得对,你做不到。Canvas的设计只返回自己本身的像素数据,而不是来自其他元素的任何屏幕渲染内容。
你可以创建一个覆盖整个页面并捕获渲染屏幕图像的canvas元素。
如果可能,这将是一个跨站点脚本安全漏洞。你可以通过iframe嵌入目标站点(利用用户的cookie /认证/内部网络访问它),然后逐像素吸出其中的内容。
document.defaultview.getComputedStyle(element,pseudoElt)
,但在没有背景颜色的1像素div上,它返回“transparent”。