自定义JavaScript NodeList选择器脚本返回null / undefined

时间:2013-06-30 17:23:25

标签: javascript

我正在创建一个小的JavaScript选择器,它将根据选择器获取id或类的元素,但由于某种原因它返回null。

我基本上想测试选择器的indexOf,并相应地运行最佳选择器。由于某种原因,它返回null和undefined,任何建议都值得赞赏,jsFiddle也在下面:

var $ = function ( selectors ) {
    var selector = selectors.split( ',' );
    var results = [];

    for( var i = 0; i < selector.length ; i++ ) {
        if ( selector[i].indexOf( '#' ) == 0 ) {
            var result = document.getElementById( selector[i] );
            results.push(result);
        }
    }
    console.log(results);
}

var test = $('#myID');
console.log(test);

http://jsfiddle.net/6FWL5/

1 个答案:

答案 0 :(得分:3)

在尝试使用getElementById检索元素之前,您需要删除哈希值。改变

var result = document.getElementById( selector[i] );

var result = document.getElementById( selector[i].replace("#", "") );

这是您的jsFiddle返回。