2011-09-07 20 views
6

Tengo una página con mucha información, y sería bueno si el usuario hiciera clic en un enlace y la barra de búsqueda del navegador apareciera como si presionara Ctrl + F. Podría consultar la base de datos, ya que la información proviene de allí, pero no quiero volver a cargar la página al hacer clic en el enlace.¿Es posible simular una combinación de teclas Ctrl + F usando Jquery?

+2

http://stackoverflow.com/questions/832059/definitive-way-to-trigger-keypress-events-with-jquery – Neal

+0

posible duplicado de [¿Utilizar la búsqueda del navegador (Ctrl + F) a través de un botón en el sitio web?] (htt p: //stackoverflow.com/questions/8080217/use-browser-search-ctrlf-through-a-button-in-website) – Sheepy

Respuesta

6

Algunos navegadores soportan window.find()

+1

Parece ser el camino a seguir. Acabo de probarlo en FF, Chrome e IE9. –

2

Sé que este post es viejo, pero creo que lo resolvió usando jQuery:

//i am assuming you are searching through a table... 
    //search input field listening for key pressed 
    $('.search_input').keyup(function (e) { 
     //listening if the key pressed is the enter button 
     if (e.which === 13) { 
      //inserting the value of textfield content, you can add if statement to check if the field is null or empty 
      var search_param = $(this).val(); 
      //value of field stored into a variable 
      $('td').removeAttr('class'); 
      //remove all classes attributed to a td AND search all td to find the one that march the search parameter 
      if ($('td:contains("' + search_param + '")').html() !== undefined) { 
       //if there is any td that has that record... then check for the closest tr and add a class with item_found as value 
       $('td:contains("' + search_param + '")').closest('tr').attr('class', 'item_found'); 
       //add some highlight to it. 
       $('td:contains("' + search_param + '")').closest('tr').css({background:'yellow',color:black}); 
       //then scroll to the item 
       $(window).scrollTop($('.item_found').first().offset().top); 
      } else { 
       //if item is not found display no result found 
       alert("Sorry no result found") 
      } 
     } 
    }); 
Cuestiones relacionadas