2015-10-20 44 views
0

我将自己的开始/书签页作为兴趣项目。获取网站的主色

我想用一种干净的方式组织我的书签。我喜欢苹果通过请求元应用程序图标完成此操作的方式,所以我制作了一个可以完成这项工作的JavaScript/Ajax/PHP函数。

enter image description here

然而,当一个网站有没有应用程序图标,在它的头,我想知道哪个主色的网站使用,比如你可以在这里看到

苹果书签在Safari浏览器(背景有网站主色)

Chrome浏览器书签(在底部边框条拥有该网站的主色调)

我搜索了JavaScript函数。没有找到任何,这意味着我必须自己做一个。我认为这可以通过索引多个html标签(如标题,标签,按钮等)来完成。

这些元素有共同之处的颜色,应该是网站的主色。

你们有没有其他的想法或建议如何实现这一目标?

+0

我做了这样的事情,而使用appliedStyle + offsetHeight和循环元素计算每个标签所占的百分比房地产以及它的颜色。 – dandavis

+0

寻找建议使用的颜色的一个地方应该在页面的“meta”标签中。见http://stackoverflow.com/questions/26960703/ – Shaggy

回答

1

我不知道苹果怎么做,但它才有意义,如果他们使用预设颜色俗称网站如Facebook和Gmail等

我不知道,如果这样做我是什么即将建议将有助于确定网站的主要颜色,但您可以(粗略)做的是:

  • 获取网站的HTML。
  • 抓取css链接&样式标签。通过从响应中创建DOM结构或通过解析器/正则表达式找到它。
  • 解析css和寻找你感兴趣的元素(你认为会包含其主色的)
  • 计数的元素differente颜色的匹配量您选择

或者你也可以在你已经提取的页面上嵌入<style>标签中的css,并将它放入你的DOM中,通过访问someEl.style.background或其他来确定颜色。

任何解决方案似乎很乱,我不确定这是JavaScript的工作。也许你的服务器应该照顾这个,或者它可能足够使用理智的默认设置(例如蓝色的Facebook,红色的YouTube等)