lo unico que tenias que hacer era sustituir
document.nombre sin eliminar lo que le seguia. o mas bien, para no sobrecargarlo, creas una variable con el valor que devuelve
getElementsByName, y luego usas esa variable en sustitucion de
document.name.
Código:
var lista_uno = document.getElementsByTagName("lista1");
val1 = (!parseFloat(lista_uno[i].value))? 0: parseFloat(lista_uno[i].value);
// o mas bien esta ultima linea la puedes reducir como sigue;
val1 = parseFloat(lista[1].value) || 0;