Javascript-获取文档片段中的元素数

Javascript-获取文档片段中的元素数,javascript,object,documentfragment,Javascript,Object,Documentfragment,我通过向以下函数传递一个数字来创建计数器: function numberToHtml(n) { function createSpan(n) { var span = document.createElement('span'); span.textContent = n; return span; } function ite

我通过向以下函数传递一个数字来创建计数器:

function numberToHtml(n) {
            function createSpan(n) {
                var span = document.createElement('span');
                span.textContent = n;
                return span;
            }
            function iter(n, container) {
                if (n === '') return container;
                container.insertBefore(createSpan(n.slice(-3)), container.firstChild);
                return iter(n.slice(0,-3), container);
            }
            return iter(String(n), document.createDocumentFragment());
        }
这将返回:

DocumentFragment [ <span>, <span> ]
DocumentFragment[,]
我很难在DocumentFragment中获取大量元素。我尝试了
$(myobject).length
,它返回1


如何获取DocumentFragment中的项数?

很抱歉,我的第一个答案不正确。我很难弄清楚,你是如何得到你的结果的(那会很有帮助)。您需要的是:

var myobject = numberToHtml(3231123123);
var length = $(myobject).children().length;
alert(length); // 4
或者正如juhana指出的,您可以省略jquery包装器:

var myobject = numberToHtml(3231123123);
var length = myobject.children.length;
alert(length); // 4

由于span元素是作为子元素添加的,因此您需要计算容器的子元素。

很抱歉,我的第一个答案不正确。我很难弄清楚,你是如何得到你的结果的(那会很有帮助)。您需要的是:

var myobject = numberToHtml(3231123123);
var length = $(myobject).children().length;
alert(length); // 4
var me = numberToHtml(123455);
alert( me.childElementCount);
或者正如juhana指出的,您可以省略jquery包装器:

var myobject = numberToHtml(3231123123);
var length = myobject.children.length;
alert(length); // 4

由于span元素是作为子元素添加的,因此您需要计算容器的子元素。

很抱歉,我的第一个答案不正确。我很难弄清楚,你是如何得到你的结果的(那会很有帮助)。您需要的是:

var myobject = numberToHtml(3231123123);
var length = $(myobject).children().length;
alert(length); // 4
var me = numberToHtml(123455);
alert( me.childElementCount);
或者正如juhana指出的,您可以省略jquery包装器:

var myobject = numberToHtml(3231123123);
var length = myobject.children.length;
alert(length); // 4

由于span元素是作为子元素添加的,因此您需要计算容器的子元素。

很抱歉,我的第一个答案不正确。我很难弄清楚,你是如何得到你的结果的(那会很有帮助)。您需要的是:

var myobject = numberToHtml(3231123123);
var length = $(myobject).children().length;
alert(length); // 4
var me = numberToHtml(123455);
alert( me.childElementCount);
或者正如juhana指出的,您可以省略jquery包装器:

var myobject = numberToHtml(3231123123);
var length = myobject.children.length;
alert(length); // 4
由于跨度元素是作为子元素添加的,因此您需要计算容器的子元素

var me = numberToHtml(123455);
alert( me.childElementCount);
警报2 注意:还
me.childrence.length
返回2

要查看您必须使用什么,请执行以下操作:

console.dir(me)

然后在控制台中展开它

警报2 注意:还
me.childrence.length
返回2

要查看您必须使用什么,请执行以下操作:

console.dir(me)

然后在控制台中展开它

警报2 注意:还
me.childrence.length
返回2

要查看您必须使用什么,请执行以下操作:

console.dir(me)

然后在控制台中展开它

警报2 注意:还
me.childrence.length
返回2

要查看您必须使用什么,请执行以下操作:

console.dir(me)


然后在控制台中展开它。

jQuery包装器是不必要的<代码>myobject.children.length也有效。好的。我没注意到。看来我必须少用Jquery,才能回到最基本的方面。:)jQuery包装器是不必要的<代码>myobject.children.length也有效。好的。我没注意到。看来我必须少用Jquery,才能回到最基本的方面。:)jQuery包装器是不必要的<代码>myobject.children.length也有效。好的。我没注意到。看来我必须少用Jquery,才能回到最基本的方面。:)jQuery包装器是不必要的<代码>myobject.children.length也有效。好的。我没注意到。看来我必须少用Jquery,才能回到最基本的方面。:)