2017-04-13 40 views
2

可以說我擁有帶unicode的相機復古圖標:'\ uf083'。現在,FontAwesome中的相機復古圖標具有'\ f083'的Unicode。我如何從FontAwesome圖標中獲取原始的相機復古圖標unicode?Javascript:從Font Awesome獲取符號unicode

下面是顯示使用font-awesome生成SVG元素的示例。正如你所看到的,它只適用於原始的unicode。這就是爲什麼我需要得到原unicode的,不是字體 - 真棒一個 DEMO

我能夠得到FontAwesome統一使用此項功能:

function faUnicode(name) { 
    var testI = document.createElement('i'); 
    var char; 

    testI.className = 'fa ' + name; 
    document.body.appendChild(testI); 

    char = window.getComputedStyle(testI, ':before') 
     .content.replace(/'|"/g, ''); 

    testI.remove(); 
    return char.charCodeAt(0); 
} 

但正如我所說,我需要得到該圖標的原始unicode。有任何想法嗎? 基本上在回報我想像字符串'\ uf083';

回答

1

替換最後一行: return "\\u" + char.charCodeAt(0).toString(16)

+0

謝謝,這似乎轉換罰款。但我還有一個問題。當我設置我的對象像文本:'\ uf1de'}它的工作原理,但是當我設置它像文本:faUnicode('fa-icon');它不顯示圖標,但顯示String \ uf1de。 – Dino

+0

對不起,我不明白你的用例,你可以發佈一個有問題的代碼嗎? – thedude