jQuery - тянуть навигационный фокус к определенной ссылке при загрузке страницы - PullRequest
3 голосов
/ 11 сентября 2010

Как только страница загрузится, я хочу, чтобы фокус перешел на конкретную ссылку, поэтому нажатие клавиши ввода "щелкнет" по ней.

Я пробовал

$('ul li a:first').focus();

без везения, но я думаю, что могу неправильно истолковать использование .focus ().

Любой совет приветствуется!

: S

Ответы [ 2 ]

4 голосов
/ 11 сентября 2010

Ваш код почти верен. Вы просто скучаете по $(document).ready.

Чтобы исправить, используйте это:

$(document).ready(function(){
   $('ul li a:first').focus();
});

См. Пример в jsfiddle .

Проблема в том, что при вызове jquery страница еще не имеет этой ссылки. С $(document).ready. вы вызываете jquery только когда страница заполнена.

2 голосов
/ 11 сентября 2010

Да, хотя это немного странно, как это работает (и я нашел это в jQuery focus документах и ​​не претендую на понимание , почему работает):

$(document).ready(
  function() {
    $("a:first").attr("tabindex",'-1').focus();
  }
  );

Демонстрация по адресу: jsbin

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...