Да, все верно, есть братья - текстовая нода. Об этом не написано в книжке? И разве автор не рассказывает о DOM-инспекторе, встроенном в каждый браузер, средствах отладки и тд? Если так, можете смело выкидывать свою книжку на помойку...
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8" />
<title>новая страница</title>
</head>
<body>
<p id="header">Paragraf</p>
<script>
(function(){
var x = document.getElementById('header');
var y = x.previousSibling;
if (!y) {
alert ('данному узлу другие узлы не предшествуют!');
} else {
alert ('узел существует, nodeName:' + y.nodeName + ', nodeValue:[' + y.nodeValue + ']');
}
var z = x.previousElementSibling;
if (!z) {
alert ('данному элементу другие элементы не предшествуют!');
}
})();
</script>
</body>
</html>
И причем тут jQuery вообще?
Откройте для себя Firebug/Chrome Developer Tools, console.log, точки останова, DOM-инспектор и тд и тп. И забейте на jQuery пока не разберетесь с самим языком javascript и работой нативных методов/свойств