当前位置: 首页 > 面试题库 >

JavaScript吸管(鼠标光标下方像素的告诉颜色)

宇文弘懿
2023-03-14
问题内容

我正在寻找“ 吸管 ”工具,该工具为CMS提供JavaScript鼠标光标所位于的像素的十六进制值。

对于Firefox,确实有出色的ColorZilla]扩展。但是,它当然只是FF,我真的很想随同CMS一起提供该工具。

荷兰开发人员有一个 非常聪明的主意,即结合使用Ajax和PHP imagecolorat()来找出图像上的Pixel颜色。
但这限制了我可以访问服务器端的图像的范围 ,而我确实梦想着有一个通用工具。

我将使用其中一种方法,但更希望使用跨浏览器,基于Javascript或Flash的方式,这种方式不需要服务器端摆弄,也不需要安装扩展。

我对ColorZilla可以做的任何特定于IE的解决方案也很感兴趣-我可以只支持IE和FF,尽管跨浏览器解决方案当然是理想的。


问题答案:

JavaScript无法实现,因为它违反了跨域安全性。如果您知道组成图像的像素,那将是非常糟糕的html" target="_blank">http://some-other- host/yourPassword.png。如果鼠标位于画布上或同一域的图像元素(或带有Access-Control-Allow-Origin: *标头的另一个域的图像元素)上,则只能告诉鼠标下方像素的颜色。对于画布,您可以这样做canvasElement.getContext('2d').getImageData(x, y, 1, 1).data。对于图像,您必须使用以下命令将它们绘制到画布上:

var canvas = document.createElement("canvas");
canvas.width = yourImageElement.width;
canvas.height = yourImageElement.height;
canvas.getContext('2d').drawImage(yourImageElement, 0, 0);

然后,只需使用为画布说明的先前方法即可。如果您必须能够转换为各种颜色值表示形式,请尝试我的color.js库。

此外,您永远也无法支持IE <9(假设IE9支持画布),并且使用Flash也无济于事,因为它也无法读取文档的像素数据。



 类似资料:
  • 问题内容: 如何为网页中的鼠标光标分配颜色? 谁能建议我使用HTML,CSS,JavaScript等任何技术来做到这一点的方法? 问题答案: 将图片与CSS 属性一起使用,我看不到需要JavaScript继承人… 如前所述,我只使用了其中的一种,只是以防万一您的图像无法加载,就像我们声明了多个字体系列一样。

  • 问题内容: 我正在尝试构建一个程序,该程序检测鼠标光标下的颜色,然后在屏幕上的窗口中显示颜色和RGB值。我对Java非常陌生,所以什么都不知道。在朋友的帮助下,我已经编写了两个代码,第一个代码获取缓冲图像的特定坐标的RGB值,另一个代码获取用户定义的RGB值并显示其中带有颜色的窗格。我的问题是“无论滚动到什么位置,如何获取程序来检测鼠标光标下的颜色? 问题答案: 正如@Hovercraft指出的那

  • 我有一个子类JPanel的PointPanel,我想在其中实现以下行为:如果鼠标悬停在实例上,按下shift键,鼠标光标变为手光标;如果松开shift键,鼠标光标将变回默认光标。 为了实现这一点,我尝试在构造函数中添加一个: 这种方法不起作用。 包含此面板的窗口应该具有焦点,因为它是应用程序的唯一可见窗口。 我错过了什么?

  • 我有一个浅色主题但深色动作栏的应用程序。所以我的颜色控制激活是我的主色(绿色),在浅色背景下,编辑文本光标是绿色的。问题是我的动作栏是绿色的,所以当在动作栏中使用搜索文本时,我看不到光标,因为它是相同的颜色。我如何仅在动作栏中将光标颜色更改为白色?

  • 问题内容: 是否可以在鼠标下获取RGB值像素?有完整的例子吗?这是我到目前为止的内容: 问题答案: 这是一个完整的,独立的示例。首先,使用以下HTML: 相关的JavaScript: 上面的代码假定存在jQuery和以下实用程序功能:

  • 可以在没有预定义的光标样式的情况下获得当前的光标类型,就像鼠标通过文本、链接… 大概是这样的: 我想在控制台中记录光标的状态,如:指针、文本、移动、等待... 我在jQuery中找到了某种解决方案,但我想在纯香草JS中找到一个 谢谢你的回答