I have solved it! Now after 3 days of hard work :) it works! regards yavuz
On 26 Okt., 12:00, "bc04Inc." <bc04...@googlemail.com> wrote: > Hi, > > i solved one problem. I can change the text inside a tag with > the .prepend method. But i dont know how to extend the above jquery > function to number my table of contents like > > 1. > 2. > 2.1. > 2.2. > 2.2.1 > 2.3 > 3. > > regards > yavuz > > On 23 Okt., 16:44, "bc04Inc." <bc04...@googlemail.com> wrote: > > > > > Noone an idea how to solve that? > > > Thank you > > > On 22 Okt., 15:46, "bc04Inc." <bc04...@googlemail.com> wrote: > > > > So here is the function: > > > > <script type="text/javascript"> > > > (function($) { > > > $.toc = function(tocList) { > > > > $(tocList).addClass('jquery-toc'); > > > var tocListArray = tocList.split(','); > > > $.each(tocListArray, function(i,v) { tocListArray[i] = $.trim > > > (v); }); > > > > var $elements = $('.jquery-toc'); > > > > $('body').append('<div></div>'); > > > var $toc = $('body div:last'); > > > > var lastLevel = 1; > > > > $toc.append('<ul class="jquery-toc-1"></ul>'); > > > > $elements.each(function() { > > > var $e = $(this); > > > var text = $e.text(); > > > var anchor = text.replace(/ /g,'-'); > > > > $e.before('<a name="' + anchor + '"></a>'); > > > > var level; > > > > $.each(tocListArray, function(i,v) { > > > if (v.match(' ')) { > > > var vArray = v.split(' '); > > > var e = vArray[vArray.length - 1]; > > > } else { e = v; } > > > if ($e.is(e)) { level = i+1; } > > > }); > > > > var className = 'jquery-toc-' + level; > > > > var li = '<li><a href="#' + anchor + '">' + text + '</a></li>'; > > > > if (level == lastLevel) { > > > $('ul.' + className + ':last',$toc).append(li); > > > } else if (level > lastLevel) { > > > var parentLevel = level - 1; > > > var parentClassName = 'jquery-toc-' + parentLevel; > > > $('ul.' + parentClassName + ':last',$toc). > > > append('<ul class="' + className + '"></ul>'); > > > $('ul.' + className + ':last',$toc).append(li); > > > } else if (level < lastLevel) { > > > $('ul.' + className + ':last',$toc).append(li); > > > } > > > > lastLevel = level; > > > > }); > > > > var $toc_ul = $('ul.jquery-toc-1',$toc); > > > $toc.remove(); > > > return($toc_ul); > > > > } > > > > })(jQuery); > > > > $(document).ready(function(){ > > > $.toc('#pagecontent_b h1,#pagecontent_b h2,#pagecontent_b > > > h3').prependTo('#pagecontent_b'); > > > }); > > > </script> > > > > It creates a table of content for all the h1, h2, etc on a page. What > > > i want to do is, to set a number in front of each TOC Element. I cant > > > use OL's cause the subheader (h2, h3, etc) must be numbered like 1.1.1 > > > or 1.2.1 etc. > > > > Thats one thing. The other thing is, when i did this for a heading, i > > > want to manipulate the html inside this hx Tag so it exactly shows the > > > same number as the table of content. That means i have to manipulate > > > the hx tag and add in front of the "insidehtml" the number. Nothing > > > more. > > > > thank you > > > yavuz > > > > On 22 Okt., 15:27, jerome <m...@amosdesigns.net> wrote: > > > > > sorry, but I don't know Rebecca Murphey. Why can't you just wrapper the > > > > head > > > > tag in an ol? or do you need to change the h tag level to a different > > > > level? > > > > > ----- Original Message ----- > > > > From: "bc04Inc." <bc04...@googlemail.com> > > > > To: "jQuery (English)" <jquery-en@googlegroups.com> > > > > Sent: Thursday, October 22, 2009 1:24 AM > > > > Subject: [jQuery] How can i set a number inside a h1 tag before the text > > > > > starts? > > > > > Hi, > > > > i am using the table of contents function of rebecca murphey. The > > > > script works fine, but i need to extend itin two ways. > > > > > 1. set a number for each toc element? > > > > 2. set exactly this number to he h1 inner html in fron of the text? > > > > > So that the result is: > > > > > 1. Head 1 > > > > 2. Head 2 > > > > … > > > > … > > > > > 1. Head 1 > > > > mycontent text djaskdjasödjaskdj aslökjd asd > > > > dkajsdjaslödkjasdkljasldkjasd > > > > > 2. Head 2 > > > > mycontent text sldkasäfasdfkasdjflöasdf > > > > asdfasdkfjasdfnasdm,fn sdjaf asöd > > > > ... > > > > > Thank you!- Zitierten Text ausblenden - > > > > > - Zitierten Text anzeigen -- Zitierten Text ausblenden - > > > - Zitierten Text anzeigen -- Zitierten Text ausblenden - > > - Zitierten Text anzeigen -