Recentemente, eu estava escrevendo uma página h5 incorporada no miniprograma webview, que é uma função dos comentários do artigo. No processo, encontrei muitos problemas de compatibilidade, e o desempenho em diferentes modelos também era muito inconsistente, então resumi os seguintes problemas. : Grave-o para poder revisá-lo mais tarde
1. Problema de dataPara aaaa-mm-dd hh:mm:ss, este formato não é reconhecido pelo sistema ios
Quando a hora é formatada, ela é bem processada no lado do navegador, mas no celular torna-se NAN, ou nulo. Nesse caso, o sistema iOS não consegue converter esse tipo de hora.
deixe data = new Date('2019-02-28 18:33:24');
A solução é convertê-lo para o formato aaaa/mm/dd hh:mm:ss.
substituir(//-/g, /)2. O teclado é guardado e a página fica travada e não retorna.
No ios12, descobri que quando o teclado é retraído, a página fica presa, deixando a parte inferior em branco. Se você mover levemente a página, ela será restaurada.
Para esse tipo de problema, verifiquei diversas soluções na Internet. A solução é rolar a página aproximadamente durante o evento de desfoque.
window.scrollTo(0, rolagem);
Mas há um problema muito sério: se houver botões na página que precisam ser operados, por exemplo, uma caixa de entrada de comentários + botão publicar, após inserir o texto, clique em publicar, e quando o evento de clique for acionado, a página irá acionar o evento de desfoque primeiro e o teclado retornará. . . . O clique do botão não faz nada.
Solução: Alterar o evento click para ontouchstart pode resolver esse problema. O evento ontouchstart é melhor que o acionamento do evento click
3. Na webview do miniaplicativo WeChat no ios12, o teclado é retraído e a parte inferior da página ficará em branco.Suspeita-se que esse problema seja causado pelo fato de a configuração de rolagem da página ser automática.
4. A correção do iPhone falha, fazendo com que o cursor da área de texto se desloque em algumas máquinas.Solução: Todos os elementos irmãos tornam-se absolutos e o elemento pai overflow:auto;
Elemento pai: altura: 100vh; posição: relativo; overflow-x: visível; preenchimento inferior: 10px; índice z: 15. O teclado bloqueia a caixa de entrada
Se a caixa de entrada for fixada na parte inferior usando fixo, quando o teclado for levantado, o fixo falhará no iPhone, fazendo com que a página role com a página e, em alguns modelos, a caixa de entrada irá. ocasionalmente ser bloqueado pelo teclado. Problemas ocasionais, muito hostis.
Solução: Desista de usar layout fixo Se a página tiver rolagem, desista de absoluto. Se você for forçado a usar absoluto, consulte o artigo anterior sobre deslocamento do cursor.
Recomenda-se usar layout flexível e a compatibilidade será resolvida.
Claro, se você encontrar os problemas acima, isso significa que o design do produto é muito irracional. Se necessário, você ainda precisará alterar o design para um design onde a entrada não precise ser pressionada pelo teclado. não são perfeitos.
O texto acima é todo o conteúdo deste artigo. Espero que seja útil para o estudo de todos. Também espero que todos apoiem a Rede VeVb Wulin.