¿Qué está mal con esta llamada a getElementsByClassName en Javascript?

Estoy tratando de acceder al ancho de un div para poner en una cookie. Este es el div:

Es el único div con este nombre de clase. No es una opción para especificar una identificación única para el div. Este es el código que he estado usando en un evento para llamarlo pero da un error:

  document.getElementsByClassName(tab_panel).style.width 

Sé que Firefox admite getElementsByClassName , así que, ¿qué estoy haciendo mal?

4 Solutions collect form web for “¿Qué está mal con esta llamada a getElementsByClassName en Javascript?”

Es una cuerda

 document.getElementsByClassName("tab_panel")[0].style.width 

Adiós

PS es una matriz

document.getElementsByClassName("tab_panel") devuelve una colección de nodos, el primero de los cuales es referido por document.getElementsByClassName("tab_panel")[0] .

Si el nodo que está buscando no tiene una asignación de estilo = “ancho: ‘en línea, se devuelve una cadena vacía de document.getElementsByClassName("tab_panel")[0].style.width .

Faltan citas :

 document.getElementsByClassName('tab_panel')..... 

Debes iterar sobre todos los elementos como este:

 var elms = document.getElementsByClassName('tab_panel'); for(var i = 0 ; i < elms.length; i++) { alert(elms[i].style.width); } 

Intenta decir:

 document.getElementsByClassName("tab_panel") 
Javascript tiene muchos buenos JS marco (como Node.js AngularJS Vue.js React.js) es el mejor lenguaje de script.