javascript - 我正在尝试在使用 javascript 打印页面时根据可滚动的屏幕宽度来缩放页面
问题描述
有没有更好的办法?我有一个在线工具,其中包含要打印的可变宽度表格...我想打印整个可滚动区域。当javascript检测到媒体被打印时的方法然后在主体上添加一个比例变换以使其适合......缩放的数量是一个常数(我通过反复试验发明)除以可滚动宽度......这可以改进吗之上?
function myFunction(x) {
var scale = 800 / document.body.scrollWidth;
console.log(scale);
if (x.matches) { // If media query matches
document.body.style.transform = "scale("+scale+")";
//document.body.style.backgroundColor = "yellow";
} else {
document.body.style.transform = "scale(1)";
//document.body.style.backgroundColor = "pink";
}
}
var x = window.matchMedia("print")
myFunction(x) // Call listener function at run time
x.addListener(myFunction) // Attach listener function on state changes
解决方案
推荐阅读
- qt - 如何给 TableWidget 的单元格不同的宽度
- reactjs - 反应socket io太多连接错误
- node.js - 查找 - 未找到关系 xxx
- sql - Oracle SQL - 如何显示 2 位小数
- amazon-web-services - AWS-RunShellScript 调用 python 脚本但找不到 python 模块
- qt - 如何在 QToolButton 中为指标设置右边距?
- collections - Rust:没有为 struct `std::string::String` 找到名为 `join` 的方法
- firebase - Flutter:每当打开屏幕时自动运行一个函数
- go - 如何与消费者共享 Golang 包测试数据文件?
- python - python中的多部分表单数据请求(发送2个文件和其他字段数据)