Type alias Config

Config: {
    disabled: boolean;
    enterTo: EnterTo;
    leaveFor: LeaveFor | null;
    restrict: Restrict;
    selfSection: boolean;
    simpleSectionOptions: SimpleSectionOptions | null;
    straightOnly: boolean;
    straightOverlapThreshold: number;
    getDefaultElement<S>(sectionRoot: HTMLElement, sectionId: S): null | HTMLElement;
}

Type declaration

  • disabled: boolean

    Определяет можно ли выбрать элемент секции с помощью клавиш

  • enterTo: EnterTo

    Определяет какой элемент выбрать при входе в секцию

    • calculated - Spatial Navigation сам выберет элемент для фокуса

    • last-focused - Последний элемент, который был в фокусе в данной секции, если такого нет - так же как calculated

    • default-element - Элемент, возвращаемый функцией getDefaultElement. Если результат getDefaultElement === null — то calculated

  • leaveFor: LeaveFor | null

    Переопределяет поведение Spatial Navigation при выходе из текущей секции.

    Example

    section1.leaveFor = {
    up() {
    return {
    type: 'section-name',
    result: 'section0',
    }
    },
    left() {
    // произвольные действия
    window.history.pop()

    return {
    type: 'no-spatnav-navigation',
    result: null,
    }
    },
    }
  • restrict: Restrict

    Определяет ограничения при перемещении внутри текущей секции.

    • none - никаких ограничений, Spatial Navigation сам выберет элемент для фокуса

    • self-only - ограничивает навигацию только в данной секции. Элементы из других групп можно будет выбрать только с помощью функции elementFromDifferentGroup.focus()

    • self-first - элементы внутри данной группы имеют более высокий приоритет, чем элементы из других групп

  • selfSection: boolean

    true если элемент имеет className sn-section-root и sn-section-item одновременно

  • simpleSectionOptions: SimpleSectionOptions | null

    Определяет ограничения при перемещении внутри текущей секции.

    • row - если элементы секции расположены горизонтально

    • column - если элементы секции расположены вертикально

  • straightOnly: boolean

    Spatial Navigation будет искать только элементы, лежащие на одной линии (вертикально или горизонтально) с текущим активным элементом

    По умолчанию считается только элементы лежащие пиксель в пиксель на одной линии.

    Если straightOnly нажатия вниз элемент next будет пропущен и будет выбран real next

    Example

         ┏━━━━━━━━━┓
    focused
    ┗━━━━━━━━━┛

    ┏━━━━━━━┓ ↓
    next? ┃ ↓
    ┗━━━━━━━┛ ↓

    ┏━━━━━━━━━━━┓
    real next
    ┗━━━━━━━━━━━┛
  • straightOverlapThreshold: number

    Это свойство используется для определения того, что считать за элемент, находящийся на одной линии. Допустимые значения от 0 до 1.0. Значение 0.5 означает, что элемент считается стоящим на одной линии с текущим, только в том случае, если он перекрывает прямую область в направлении перехода не менее чем на половину.

  • getDefaultElement:function
    • Функция, которая возвращает элемент по умолчанию для секции

      Type Parameters

      • S extends string

      Parameters

      • sectionRoot: HTMLElement
      • sectionId: S

      Returns null | HTMLElement

Generated using TypeDoc