Вы уже установили положение nav
как fixed
по умолчанию, которое не даст вам желаемого результата. Вы должны установить его положение как static
по умолчанию и изменить значение после того, как документ достигнет определенной точки с помощью прокрутки.
Как я уже упоминал ранее, этот сценарий в действующем ОП выполняет правильную работу. Единственное, что я сделал, это скопировал / вставил этот скрипт в ваш пример (и некоторые небольшие изменения CSS).
Проверьте эту пересмотренную версию на codePen
.
Focus is a low-level method intended primarily for custom control authors. Instead, application programmers should use the Select method or the ActiveControl property for child controls, or the Activate method for forms.
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.focus.aspx
Focus () - это функция низкого уровня, которая фактически устанавливает фокус.
Select () - это метод более высокого уровня. Сначала он просматривает итеративно вверх в родительской иерархии элемента управления, пока не найдет контейнерный элемент управления. Затем он устанавливает свойство ActiveControl этого контейнера (для вызываемого элемента управления). Однако логика этих методов непроста, и для контейнеров UserControl предусмотрена специальная обработка.