2016-02-27 9 views
7

Używam wtyczki jQuery Selectric do personalizacji wybranych.Błąd jQuery Selectric na iPadzie

$('select').selectric({ 
    disableOnMobile: false 
}); 

Jeśli otworzyć wybierz na urządzeniu iPad moja lewa kolumna poruszać się

.left-column { 
    position: fixed; 
    left: 0; 
    top: 0; 
    width: 200px; 
    height: 100vh; 
    background: #F00; 
    z-index: 100; 
} 

Proszę o pomoc z tym. Demo tutaj: http://output.jsbin.com/seleyi

enter image description here

UPD: Test na browserstack iOS < 7 - Nie ma problemu, iOS 8.3 - masz jakiś problem, iOS 9.1 mają ten błąd

+1

'100vh' →' 100% ': http://output.jsbin.com/hiyewotiqo – blex

+0

@blex to pomóc w tym przykładzie, ale nie na mojej stronie, robię nowe demo, tutaj możesz go złapać, jeśli wybierz umieść w dolnej części strony http://jsbin.com/seleyi/edit?output http://prntscr.com/a8k00x – sglazkov

+0

@blex dodaj demo i zdjęcie w pytaniu – sglazkov

Odpowiedz

1

To iOS bug 9, to w iOS 8, ale w wersji 9 częściowo.

Błąd z numerem input, z atrybutem readonly="readonly". Selectric użycie hide Wejście:

enter image description here

Co się stało:

  1. Jeśli kliknięcie na metodzie selectric-wrapper startowym _open.
  2. Metoda _open ustaw ostrość na ukryj input.selectric-input. Tworzy wtyczkę selekcyjną i nie wiem dlaczego. Może być, prostsze dodawanie słuchaczy do klawiszy na ukrytym elemencie. I radzić sobie z takimi zdarzeniami, gdy przedmiot jest skupiony. Dlaczego input? Jeśli użyjesz innego elementu, a następnie naciskając klawisze strzałek, przewiniemy również sam dokument. Ponieważ używaj wejścia, chociaż mógłbym się mylić. Może lepszy wkład dla e-czytników, tj. Użył go do zwiększenia dostępności.

Gdy pojawia się fokus, pomimo faktu, że jest on tylko do odczytu, iOS (tak mi się wydaje) próbuje przydzielić miejsce na klawiaturę. Mogę doradzić proste rozwiązania:

$(".selectric-input[readonly]").on("focus", function(evt) { 
    this.blur(); 
}); 

Ie gdy wejście ostrości natychmiast go pozbyć, bo na iPadach niemożliwe, aby poruszać się po liście za pomocą klawiatury, funkcjonalność nie powinna być zagrożona.