getElementsByClassName Chrome vs Firefox
Demo of how Chrome and Firefox return different HTMLCollections with getElementByClassName
by jacobwsmith
HTML
<div class="answers" style="font-size: 14px;">
<div id="vsAnswerBtn0" class="answerBtn" onclick="VIZU.surveyFN[2205470131].selectAnswer(0,899991,1,false);"><span class="button radio"><abbr> </abbr></span><span class="answer">Definitely will</span>
</div>
<div id="vsAnswerBtn1" class="answerBtn" onclick="VIZU.surveyFN[2205470131].selectAnswer(1,899992,1,false);"><span class="button radio"><abbr> </abbr></span><span class="answer">Probably will</span>
</div>
<div id="vsAnswerBtn2" class="answerBtn" onclick="VIZU.surveyFN[2205470131].selectAnswer(2,899993,1,false);"><span class="button radio"><abbr> </abbr></span><span class="answer">May or may not</span>
</div>
<div id="vsAnswerBtn3" class="answerBtn" onclick="VIZU.surveyFN[2205470131].selectAnswer(3,899994,1,false);"><span class="button radio"><abbr> </abbr></span><span class="answer">Probably will not</span>
</div>
<div id="vsAnswerBtn4" class="answerBtn" onclick="VIZU.surveyFN[2205470131].selectAnswer(4,899995,1,false);"><span class="button radio"><abbr> </abbr></span><span class="answer">Definitely will not</span>
</div>
</div>
JavaScript
// Get the answer rows
var answerRows = document.getElementsByClassName('answerBtn');
// Loop over object
var count = 0;
for (var j in answerRows) {
count++;
}
// Output for testing
console.log('array count: ' + answerRows.length);
console.log('object count: ' + count);
console.log(answerRows);