防止虚拟键盘推送内容

时间:2018-07-02 14:44:51

标签: javascript html css keyboard

我有网站;带输入的背景图像。当我按下手机上的输入时,键盘将打开,一切都被推上。我希望内容保留在原处,而键盘只是翻阅内容而不影响(移动)它。我看到了这个解决方案:

input.onfocus = function () {
    window.scrollTo(0, 0);
    document.body.scrollTop = 0;
}

但是它似乎不起作用。我期待您的回答!

1 个答案:

答案 0 :(得分:1)

您可以看一下这篇StakOverflow帖子,但我将为您总结最有用的部分:

以输入的CSS作为position: fixed;开始。聚焦时,将其更改为绝对值。这是JS的示例:

if (document.getElementById("fixed") == document.activeElement) {
    document.getElementById("fixed").class += "absolute"
}

当然,这取决于CSS:

#fixed {
    ...
    position: fixed;
}
#fixed.absolute {
    position: absolute;
}

我希望这会有所帮助!