2

I am gettings TypeError: 'undefined' is not a function (evaluating 'document.getElementByClassName("selceted")') when trying to get the class name or ID of the div. and I cannot figure out why. The array/nodelist is NOT empty, it has ALL the data in from every timeline-item post, and only 1 has the class of selected so how do I get only that element?

Here is my code so far:

if($.inArray(postdate, post_image_dates)){
    var posts = $(".timeline-item");
    posts.removeClass("selected");
    var matchedPost = posts.filter("[data-date='" + postdate + "']");

    if(matchedPost.length > 0){
        matchedPost.addClass("selected");

        var more_post_content = document.createElement('div');
        more_post_content.id = 'more_post_content';

        var ul = document.createElement('ul');
        var li = document.createElement('li');
        li.innerHTML = '<a href="#"><img src="' + postdata + '"/></a>';

        ul.appendChild(li);
        more_post_content.appendChild(ul);
        var elementArray;

        elementArray = [].slice.call(matchedPost, 0);
        console.log(elementArray);
        if($.inArray('selected', elementArray)){
            var select = document.getElementByClassName("selceted");
        }
    }
4

3 回答 3

1

您还需要更改getElementByClassNamegetElementsByClassName您使用的类名不正确。

if($.inArray('selected', elementArray)){
   var select = document.getElementsByClassName("selected");
   //..............................^................^.........
}
于 2014-01-26T11:27:15.303 回答
0

尝试更改selcetedselected

getElementByClassNameto getElementsByClassName,最终select变量应该是:

if($.inArray('selected', elementArray)){
    var select = document.getElementsByClassName("selected");
}
于 2014-01-26T11:25:11.077 回答
0

这里只是一些拼写错误

document.getElementByClassName("selceted");

改成

document.getElementsByClassName("selected");

句法

elements = document.getElementsByClassName(names); // or:
elements = rootElement.getElementsByClassName(names);

例子

获取所有具有类的元素'test'

document.getElementsByClassName('test');
于 2014-01-26T11:28:51.230 回答