我找不到任何接口来访问真实的实时价值。[柜台]
是的 我不认为有一个。抱歉。
我唯一想到的就是遍历文档中该元素之前的每个元素(包括其
:before/
:after伪元素),查找计数器并累加多少。
显然,这很可怕。如果您要尝试重现浏览器自己的
counter机制,则将其替换为您自己的基于脚本的计数器可能会更容易(并且兼容性更好,因为IE <=
7缺乏计数器/内容支持)。例如。类似于以下内容:
<a href="#prettypicture">this</a><div >...</div><img id="prettypicture" alt="ooo, pretty"/>window.onload= function() { var counters= Node_getElementsByClassName(document.body, 'counter'); var indices= []; for (var counteri= 0; counteri<counters.length; counteri++) { var counter= counters[counteri]; var level= Element_getClassArgument(counter, 'level'); while (indices.length<=level) indices.push(0); indices[level]++; indices= indices.slice(level+1); var text= document.createTextNode('Figure '+indices.join('.')); counter.parentNode.insertBefore(text, counter.nextSibling); if (counter.id!=='') { for (var linki= document.links.length; linki-->0;) { var link= document.links[i]; if ( link.hostname===location.hostname && link.pathname===location.pathname && link.search===location.search && link.hash==='#'+counter.id ) { var text= document.createTextNode('('+indices.join('.')+')'); link.parentNode.insertBefore(text, link.nextSibling); } } } }};


