正如 Shai(代号之主)所指出的,没有办法在本地做到这一点。
不过,CodenameOne BrowserComponents 允许您非常轻松地将 javascript 注入页面,您可以使用它来修改网页中限制缩放和限制视口大小的部分。
当然,这仍然可能与通常的桌面网站有所不同,但如果您关心的主要问题是受限缩放和受限视口大小,您可以使用以下解决方法。
在某处定义 javascript:
public static final String VIEWPORT_SCRIPT = "viewport = document.querySelector(\"meta[name=viewport]\");\r\n" +
"viewport.setAttribute('content', 'width=1920px, height=1920px, initial-scale=0.25, maximum-scale=4.0, user-scalable=1');";
当你初始化你的 BrowserComponent 时,给它一个 ActionListener 在加载时运行这个脚本,如下所示:
pageBrowser = new BrowserComponent();
pageBrowser.addWebEventListener(BrowserComponent.onLoad, (e) -> {
pageBrowser.execute(VIEWPORT_SCRIPT);
});
您显然可以使用您在 javascript 中设置的宽度和高度,以及初始缩放系数和缩放限制。
javascript 的机制相对简单,它们搜索包含视口特征的元标记,并将内容设置为其他内容。如果您检查您尝试获取桌面版本的网站的 html,您可能会发现其他元标记,您可以使用这些标记来处理我没有预料到的其他行为。
希望这可以帮助遇到同样问题的其他人。这是我能找到的最好的解决方法。