Come altri hanno già detto, non stai usando il nome della funzione corretta e non esiste universalmente in tutti i browser.
Se è necessario eseguire il recupero tra browser di qualsiasi cosa diversa da un elemento con un ID con document.getElementById(), quindi suggerirei vivamente di ottenere una libreria che supporti i selettori CSS3 in tutti i browser. Ti farà risparmiare una grande quantità di tempo di sviluppo, test e correzione di errori. La cosa più semplice da fare è usare jQuery perché è così ampiamente disponibile, ha un'eccellente documentazione, ha accesso gratuito alla CDN e ha un'eccellente comunità di persone dietro di essa per rispondere alle domande. Se questo sembra più del necessario, puoi ottenere Sizzle che è solo una libreria di selettori (in realtà è il motore di selezione all'interno di jQuery e altri). L'ho usato da solo in altri progetti ed è facile, produttivo e di piccole dimensioni.
Se si desidera selezionare più nodi contemporaneamente, è possibile farlo in molti modi diversi. Se dai loro tutti la stessa classe, puoi farlo con:
var list = document.getElementsByClassName("myButton");
for (var i = 0; i < list.length; i++) {
// list[i] is a node with the desired class name
}
e restituirà un elenco di nodi che hanno quel nome di classe.
In Sizzle, sarebbe questo:
var list = Sizzle(".myButton");
for (var i = 0; i < list.length; i++) {
// list[i] is a node with the desired class name
}
In jQuery, sarebbe questo:
$(".myButton").each(function(index, element) {
// element is a node with the desired class name
});
In Sizzle e jQuery, puoi inserire più nomi di classe nel selettore in questo modo e utilizzare selettori molto più complicati e potenti:
$(".myButton, .myInput, .homepage.gallery, #submitButton").each(function(index, element) {
// element is a node that matches the selector
});