розовый слоник,
я пока пришел к такому коду: cont=document.querySelector('.code'); code=cont.innerHTML; i=0; getLine=function() { x=' ' if(i<9){ x=' 0'} return '<span>'+x+(++i)+' | </span>'; }; code = code.replace(/^\s*/, getLine).replace(/<br.*?\/?>\s*(?!\s*$)/g, function() { return '<br />'+'<span>'+getLine()+'</span>'; }); cont.innerHTML = code; он работает, вставляет " 01 | ", " 02 | ", " 03 | " и так далее, но можно его как-то сократить или почистить? |
Он пришел к коду.. Я тебе этот код для примера написал, в IE он не будет работать.
|
ваый,
я его подправил, у теебя 0 не писал и в тег спан не обворачивал, а как сделать, чтобы в ие работал? |
не использовать querySelector
|
ваый,
напиши, как именно, пожалуйста |
через getElementsByClassName?
|
i=0; cont=document.getElementsByClassName("code")[i]; code=cont.innerHTML; getLine=function() { return '<span>'+(++i)+' | </span>'; }; code = code.replace(/^\s*/, getLine).replace(/<br.*?\/?>\s*(?!\s*$)/g, function() { return '<br />'+'<span>'+getLine()+'</span>'; }); cont.innerHTML = code; работает |
ваый,
в ие всеравно не работает |
ваый,
for (var i=0;i<document.getElementsByClassName("code").length;i++){ cont=document.getElementsByClassName("code")[i]; code=cont.innerHTML; y=1 getLine=function() { x=' ' if(y<10){ x=' 0'} return '<span>'+x+(y++)+' | </span>'; }; code = code.replace(/^\s*/, getLine).replace(/<br.*?\/?>\s*(?!\s*$)/g, function() { return '<br />'+'<span>'+getLine()+'</span>'; }); cont.innerHTML = code; } до этого дошел в ие не пашет всеравно |
Ну ты даешь. Как ты думаешь, почему я сказал, что с querySelector не будет работать в ие? Потому что там нету поддержки querySelector. C getElementsByClassName та же ситуация. Значит, что надо сделать? Найти функцию getElementsByClassName, которая будет срабатывать, когда нету нативной поддержки.
|
Часовой пояс GMT +3, время: 04:53. |