2010-04-07 17 views
6

nehme ich an diesen HTML-Markup haben:JQuery: Lesen Sie jede Zeile eines Elements

<div id="wrapper"> 
<pre class="highlight"> 
    $(function(){ 
    // hide all links except for the first 
    $('ul.child:not(:first)').hide(); 
    $("a.slide:first").css("background-color","#FF9900"); 

    $('ul.parent a.slide').click(function(){ 
     $('ul.parent a.slide').css("background-color","#3399FF"); 

     $('ul.parent a.slide').mouseout(function(){ 
      $(this).css("background-color","#3399FF"); 
     }); 

     $('ul.parent a.slide').mouseover(function(){ 
      $(this).css("background-color","#66CC66"); 
     }); 
    }); 
    }); 
    </pre> 
</div> 

Was ist der einfachste Weg ist es, jede Zeile Code in der div zu lesen. Wie extrahiere ich jede Codezeile aus dieser div oder loop über jede Linienform, wie ich will.

Dank

Edit:

ich die pre Tag nach der Wrapper-Klasse hinzugefügt haben, beachten Sie bitte auch, dass. Dank

+2

Ich nehme an, Sie haben 'white-space: pre' im CSS für' # wrapper' oder etwas? –

+1

Das ist das Böse in seiner reinsten Form. – googletorp

+0

@ T.J. Crowder: Ja, ich habe. – Sarfraz

Antwort

15

Meinen Sie so etwas wie dieses:

var lines = $("#wrapper pre").text().split("\n"); 
$.each(lines, function(n, elem) { 
      console.log(elem); 
      }); 

Da dieser Text (und nicht html) ist, sollten Sie es als solche behandeln. Der einzige Weg, dies zu tun, ist es zu lesen und dann String-Parsing-Routinen zu verwenden.

+0

Bitte beachten Sie meine neue Bearbeitung zu Frage. Danke – Sarfraz

3

Meist müssen nur gerade JavaScript:

var text; 

text = $('#wrapper pre').text(); // Or .html, doesn't really matter with the input you showed 
text = text.replace("\r\n", "\n"); // Just in case 
text = text.split("\n"); 
// text is now an array of lines 

Einiger Browser den ersten Zeilenumbruch trimmen, manche nicht, so gibt es ein paar Grenzfälle (kein Wortspiel). Aber das ist es im Grunde genommen.

+0

Bitte beachten Sie meine neue Bearbeitung auf Frage. Vielen Dank – Sarfraz

Verwandte Themen