[JS] funkcja zmieniająca zawartość div'a w listę

josh4vi

Użytkownik
Dołączył
Kwiecień 4, 2012
Posty
27
Witam. próbowałem napisać funkcję w javascript, która po wywołaniu zamienia wszystkie znaki nowej lini w znaczniku <pre> na elementy listy numerycznej. nigdy wcześniej nie miałem styczności z JS (tylko z PHP, html, css i mysql) ale wiedząc że JS jest podobny do PHP przeczytałem dwa kursy i spróbowałem coś sklecić:
to wsadziłem do sekcji <head>:

HTML:
<script type="text/javascript">
function linenum(id){
var obj= document.getElementById(id).innerHTML;

obj= "<ol><li>"+obj.replace(/<br>/g,"</li><li>")+"</li></ol>";
}
</script>

a do body to:


HTML:
<pre id="code"><code>
function lol(){
 echo 'jakistekst';
}

</code></pre>

<script>
linenum("code");
</script>
niestety mój kod nie działa. nie potrafię znaleźć błędu gdyż jestem prawie zielony w tym temacie więc niezbyt wiem gdzie szukać.
Może ktoś z was spróbowałby mi troche dopomóc?

/edit
na stronie chcę dodać parę elementów w których będzie trzeba ponumerować linie.
 
Ostatnia edycja:

josh4vi

Użytkownik
Dołączył
Kwiecień 4, 2012
Posty
27
dziękuję za zaangażowanie. pomoc znalazłem na innym forum. dla potomnych:
poprawiona funkcja wygląda tak:
HTML:
<script type="text/javascript">
window.onload=function(){
    function linenum()
    {
        var pre_list = document.getElementsByClassName("code");
        for(var i = 0; i < pre_list.length; i++)
        {
            var obj = pre_list[i].firstChild.innerHTML;
            obj = "<ol><li>" + obj.replace(/\n/g,"</li><li>") + "</li></ol>";
            pre_list[i].firstChild.innerHTML = obj;
        }
    }
    linenum();
};
</script>
 
Do góry Bottom