mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	
		
			
	
	
		
			54 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			54 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|   | $(document).ready(function() { | ||
|  |     // add the search form and bind the events
 | ||
|  |     $('h1').after([ | ||
|  |       '<p>Filter entries by content:', | ||
|  |       '<input type="text" value="" id="searchbox" style="width: 50%">', | ||
|  |       '<input type="submit" id="searchbox-submit" value="Filter"></p>' | ||
|  |     ].join('\n')); | ||
|  | 
 | ||
|  |     function dofilter() { | ||
|  |         try { | ||
|  |             var query = new RegExp($('#searchbox').val(), 'i'); | ||
|  |         } | ||
|  |         catch (e) { | ||
|  |             return; // not a valid regex (yet)
 | ||
|  |         } | ||
|  |         // find headers for the versions (What's new in Python X.Y.Z?)
 | ||
|  |         $('#changelog h2').each(function(index1, h2) { | ||
|  |             var h2_parent = $(h2).parent(); | ||
|  |             var sections_found = 0; | ||
|  |             // find headers for the sections (Core, Library, etc.)
 | ||
|  |             h2_parent.find('h3').each(function(index2, h3) { | ||
|  |                 var h3_parent = $(h3).parent(); | ||
|  |                 var entries_found = 0; | ||
|  |                 // find all the entries
 | ||
|  |                 h3_parent.find('li').each(function(index3, li) { | ||
|  |                     var li = $(li); | ||
|  |                     // check if the query matches the entry
 | ||
|  |                     if (query.test(li.text())) { | ||
|  |                         li.show(); | ||
|  |                         entries_found++; | ||
|  |                     } | ||
|  |                     else { | ||
|  |                         li.hide(); | ||
|  |                     } | ||
|  |                 }); | ||
|  |                 // if there are entries, show the section, otherwise hide it
 | ||
|  |                 if (entries_found > 0) { | ||
|  |                     h3_parent.show(); | ||
|  |                     sections_found++; | ||
|  |                 } | ||
|  |                 else { | ||
|  |                     h3_parent.hide(); | ||
|  |                 } | ||
|  |             }); | ||
|  |             if (sections_found > 0) | ||
|  |                 h2_parent.show(); | ||
|  |             else | ||
|  |                 h2_parent.hide(); | ||
|  |         }); | ||
|  |     } | ||
|  |     $('#searchbox').keyup(dofilter); | ||
|  |     $('#searchbox-submit').click(dofilter); | ||
|  | }); |