Несколько неясно, чего вы пытаетесь достичь.Тем не менее, похоже, что вы пытаетесь получить шрифт лица из области, где его нет.Неразрывный пробел (
) находится вне тега шрифта (<FONT> . . . </FONT>
) и поэтому не имеет ни одного атрибута этого тега (лицо или размер).Если бы неразрывный пробел был внутри тега шрифта, вы могли бы получить его лицо.
Вот скрипка , иллюстрирующая это.Чтобы что-то увидеть, я заменил  
на Hello
.
HTML:
<!-- Hello is outside the font tag. -->
<P><FONT size=5 face="Courier New"></FONT>Hello</P>
<!-- Hello is inside the font tag. -->
<p><font size=5 face="Times New Roman">Hello</font><p>
Javascript:
// Alert the face
function handleFonts(e) {
alert(this.face);
}
// Get all the font elements
var el = document.querySelectorAll("font");
// Bind event handlers to the elements
// The last element of "el" is it's length so we only
// iterate to el.length - 1 or i < el.length
for (var i = 0; i < el.length; i++) {
el[i].addEventListener("click", handleFonts, true);
el[i].addEventListener("keypress", handleFonts, true);
}
Нажав на текст впервый тег абзаца ничего не вызывает.Щелчок по тексту во втором работает нормально.
Мы можем обойти это, хотя с небольшим дополнительным JavaScript.
С HTML, как в первом теге и следующем Javascript, мы можем получитьлицо шрифта в теге, содержащем  
, даже если  
не находится внутри этого тега шрифта.
HTML:
<p id="last-p-tag"><font size=5 face="Tahoma"></font>Hello</p>
Javascript:
// Get the paragraph tag we want
var lastPTag = document.getElementById("last-p-tag");
// Bind an event to clicking on it
lastPTag.addEventListener("click", function(e) {
// Alert the face attribute of the first font element
// within that p tag
alert(this.querySelector("font").face);
}, true);
Это включено в конце скрипки.