Ну и не мудренно.
var name = document.getElementById('name').getElementsByTagName('*')[1].innerHTML;
- неправильный код. Выполнение скрипта останавливается на этой строке, потому-что идет попытка обращения к свойству несуществующего объекта.
.getElementsByTagName находит элементы
по названию тега, то есть,
document.getElementByTagName("div")
вернет массив div'ов, дочерних элементу document - ну, то есть, со всеми div'ами на странице.
document.getElementById('name').getElementsByTagName('div')
вернет массив из div'ов, являющихся дочерними элементу с идентификатором name.
Следующий код будет пытаться вернуть массив из элементов с тегом *, дочерних элементу с идентификатором name.
document.getElementById('name').getElementsByTagName('*')
Но, так как таких тегов в природе не существует, массив окажется пустым.
P.S. Пользуйся консолью ошибок JS, есть она в любом браузере. Большинство проблем можно решить, просто взглянув на нее.
P.P.S. Для того, чтобы видеть, обрабатывается код или нет, используй лучше console.log("Текст"); - текст запишется в консоль (ну, естественно, надо включить отображение лога в ней).