2015-10-20 41 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等)