2013-09-21 46 views
0

我使用的基本字體加載這樣的:我如何通過字體名稱webfont.load作爲字符串

WebFont.load({ 
    google: { 
     families: [ 'Droid Sans','Cookie','Parisienne' ] 
    } 
}); 

但我需要的字體名稱傳遞到這是一個字符串。例如:

var fntstr = "'Droid Sans','Cookie','Parisienne'"; 
WebFont.load({ 
    google: { 
     families: [ fntstr ] 
    } 
}); 

爲什麼不能正常工作?這不僅僅是一個傳遞給Webfont.load的json結構嗎?

+0

爲什麼一個字符串?該參數是一個數組,爲什麼不創建一個字體系列名稱數組? – jeff

回答

1

在第一個示例中,系列是包含3個字符串的數組。

['Droid Sans','Cookie','Parisienne'] 

在第二個例子中,families是一個包含1個字符串的數組。

["'Droid Sans','Cookie','Parisienne'"] 

爲了使這項工作,你想要做的東西像下面這樣:

var fntstr = "'Droid Sans','Cookie','Parisienne'"; 
var fntarr = fntstr.split(','); 
WebFont.load({ 
    google: { 
     families: fntarr 
    } 
}); 

分裂法將在每個逗號分割的字符串,並創建一個元素的數組。

http://www.w3schools.com/jsref/jsref_split.asp

+0

請不要引用w3schools,因爲它包含大量錯誤信息,並且示例質量極差。 – jeff

+0

難道我不能創建一個數組,然後而不是分裂? var fntstr = ['Droid Sans','Cookie','Parisienne']; –

+0

@DougWolfgram你可以創建一個這樣的數組。我添加了split方法,以便在示例中使用該字符串。 – woodedlawn

相關問題