gpt4 book ai didi

javascript - 当 textarea 聚焦时防止移动 safari 滚动页面

转载 作者:技术小花猫 更新时间:2023-10-29 11:19:05 27 4
gpt4 key购买 nike

如标题所示,我需要一种解决方法来防止移动版 Safari 在文本区域获得焦点时滚动文档。默认行为是滚动页面,使文本区域的顶部与窗口的顶部对齐。我只希望我的页面保持不变。这可能吗?

最佳答案

试试这个

// javascript.js
var locked_scroll = false;
var last_pos = 0;

document.getElementById('my-text').addEventListener('focus', function(event){
console.log('set locked');
locked_scroll = true;
last_pos = document.getElementById('wrapper').scrollTop
});

document.getElementById('my-text').addEventListener('blur', function(event){
console.log('set unlocked');
locked_scroll = false;
});

document.getElementById('wrapper').addEventListener("scroll", function(event){

if(locked_scroll) {
event.target.scrollTop = last_pos;
}

}, true);

事件滚动仅在元素具有固定高度且 overflow 属性设置为autoscroll 时起作用

#wrapper {
height: 300px;
overflow: auto;
}

检查示例:http://jsfiddle.net/4YkNj/

关于javascript - 当 textarea 聚焦时防止移动 safari 滚动页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8628377/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com