Scriptorama.nl

Header image showing a keyboard, mouse, laptop and books on design patterns

Yahoo! Instant Search

Yahoo! is een nieuwe zoekportaal gestart, genaamd Yahoo! Instant Search. Bij het zoeken verschijnt er een zwevende box met daarin de eerste hit. Een verbeterde versie van "Feeling lucky" van Google moet ik zeggen.

Zoeken op "Google" heeft je een box met daarin link naar Google en een korte beschrijving. Type je echter "22 5th ave new york ny" in (een adres in New York), dan krijg je een map te zien. Echt cool! Of "LA weather" geeft het huidige weerbericht van de stad Los Angeles. Rekenen kan natuurlijk ook! 4+4 geeft uitkomst 8.

Wij nerds willen natuurlijk weten hoe dit precies werkt. Er wordt een simpele XHR (XMLHttpRequest) gemaakt en het resultaat wordt terug getoond in XML. Een zoek op Google levert deze output op:

CODE:
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <result total="1">
  3. <![CDATA[
  4. <style>
  5.  
  6. <div id="res" class="issearch">
  7. <div class="hd"><h2>Search Results</h2></div>
  8. <div class="bd">
  9.  
  10. <div id=yschiy>
  11. <div id=yschnum>1.</div>
  12.  
  13. <cite><a href="http://rds.yahoo.com/_ylt=A9htfTeCpjpEiyUAFlEHk8oF/SIG=11ac935nd/EXP=1144780802/**http%3a//www.google.com/" accesskey="y" id="yschakis"><b>Google</b></a></cite>
  14. <p>Web Images Groups News Froogle Local more " Get less spam. Use all 2.5GB for your real email instead. Gmail. Advertising Programs - Business Solutions - Hurricane Katrina Resources - About <b>Google</b>
  15. <em>www.<b>google</b>.com</em>
  16. </p>
  17. </div></div></div>
  18. ]]></result><!-- m24.search.dcn.yahoo.com uncompressed/chunked Mon Apr 10 11:40:02 PDT 2006 -->

De XHR.responseXML wordt geparsed en de data wordt correct weergegeven. So simple, yet effective.
Een leuk weetje: als je de focus weghaalt van de input veld, kun je met ctrl+alt+y direct de link bezoeken.

Reageer ook!

Leave a comment
Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>