Chrome envuelve familias de fuentes que tienen varias palabras con comillas simples. Por lo tanto, el valor de la familia de fuentes devuelta en Chrome es: 'Times New Roman'
, que no coincide con el valor en la lista de selección Times New Roman
.
Teniendo en cuenta todas estas variaciones del navegador, creo que la mejor solución es dividir los nombres de familia por comas, recortar el comillas simples (si las hay) alrededor de cada nombre de fuente y unirlas más tarde. Use este valor sanitizado dentro de la lista de selección.
$('#selectable1 span').live('mousedown', function() {
var fontFamily = $(this).css('font-family');
var fonts = fontFamily.split(',');
var sanitizedFonts = $.map(fonts, function(name) {
// trim single quotes around font name (if any) for Chrome/Safari
// trim double quotes around font name (if any) for Firefox
return name.trim().replace(/^['"]|['"]$/g, '');
});
$('#family').val(sanitizedFonts.join(', '));
});
Ver example. La lista de selección tuvo que ser cambiado para seguir este esquema de nomenclatura coherente para los valores:
fontName[, fontName]
Esto en gran medida se basa en el hecho de que una fuente de nombre no contener comas, cotizadas o no.
+1 Estas son algunas cosas interesantes que estás haciendo con HTML5 y CSS3. – Anurag
Thanx Anurag. Me alegra que lo haya notado – Mircea