我有一个 iFrame。如果用户由于视力不好而放大或使用高倍率,我希望出现一个水平滚动条,以便用户可以在 iFrame 中从左向右滚动。这部分很简单,不是问题。我发现的问题是滚动条出现在 iFrame 的底部,如果放大到足以需要它,将需要用户从实际内容向下滚动很远才能使用它,这不是用户友好。
我想要的是在链接到主滚动条的可见窗口底部显示一个滚动条,如果用户向下滚动到足以看到主滚动条时它消失,那将是一个奖励栏。
我应该重申,这是在内容跨域的 iFrame 中。我可以编辑 iFrame 中的内容,但这将是一项相当大的任务,而编辑主窗口相对简单,所以如果所有需要的工作都可以在那里完成,那就太好了。
最佳答案
您的另一个选择是使用鼠标滚轮控制滚动,参见示例 https://jsfiddle.net/DIRTY_SMITH/5gs8pojm/
(function() {
function scrollHorizontally(e) {
e = window.event || e;
var delta = Math.max(-1, Math.min(1, (e.wheelDelta || -e.detail)));
document.documentElement.scrollLeft -= (delta*40); // Multiplied by 40
document.body.scrollLeft -= (delta*40); // Multiplied by 40
e.preventDefault();
}
if (window.addEventListener) {
// IE9, Chrome, Safari, Opera
window.addEventListener("mousewheel", scrollHorizontally, false);
// Firefox
window.addEventListener("DOMMouseScroll", scrollHorizontally, false);
} else {
// IE 6/7/8
window.attachEvent("onmousewheel", scrollHorizontally);
}
})();
关于javascript - 为 iFrame 创建 float 水平滚动条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34643704/