Google如何在页面转换时捕获按键?

nok*_*oko 1 jquery

如果您访问Google.com并在搜索栏中输入一个字母,它似乎会立即将您转移到另一个页面.您可以在此期间尽快输入内容,Google不会丢失任何一个字符.

我已经尝试使用keyup()事件和setinterval()来模拟它,但是在加载页面时我仍然会丢失一两个字符.

$(document).ready(function(){
var timer;$("input#q").keyup(
  function(e){
  var str = $("input#q").val();
  if(str.length > 1){
    clearInterval(timer);timer = setTimeout(
      function(){var url = "/search/?q="+encodeURI($("input#q").val());
      location.href = url;}, 210);
   }
});
Run Code Online (Sandbox Code Playgroud)

这是我目前正在使用的代码,它可以正常工作,但是当它转移到下一页时可能会丢失一个按键/键盘.

有谁知道谷歌如何做或有任何建议?

谢谢

Gui*_*sel 7

你认为你被转移到另一页,但事实上并非如此.它使用pop/ push在历史堆栈中,使用新的(酷!)HTML5功能.

页面永远不会重新加载,因此您不会丢失任何字符.

当您浏览存储库时,Github也会使用它.