在 jsp 中获取屏幕宽度作为变量
Getting screen width as a variable in jsp
我需要知道调整图像大小(它需要作为img src="blah.jpg?width=x传递),以便我的页面可以以不同的大小显示,有人可以在这里帮助我吗? 我只需要 x(宽度)作为 jsp 变量。
2021 年更新:哇,9 年后。 如果你正在看这个(你们中的一些人仍然在看) - Javascript在过去的9年里已经取得了惊人的长足的进步。 正如下面的评论所说,这在JSP中是不可能的,但在Javascript和CSS3中是可能的。 如果您尝试确定页面的宽度以动态调整元素大小,则可能不尊重多年来开发的响应式原则。 研究CSS Flexbox并在设计时考虑到这一点。
干杯
你所要求的不能用这种方式完成。您的 JSP 呈现在服务器上,并以 HTML 的形式发送到浏览器。只有当页面到达浏览器时,屏幕宽度才可用(使用 JavaScript)。因此,将其作为JSP变量获取根本不可能。
相反,您可以使用 JavaScript 获取上一页中的屏幕宽度,并将其设置为链接中的查询参数或表单的隐藏字段。单击链接或提交表单后,您可以访问请求以获取屏幕宽度。
当然,如果用户可以通过直接在浏览器中输入该页面来访问该页面的 URL,则这不起作用。
或者,在页面加载后使用 JavaScript 加载图像。此时您将拥有屏幕宽度,并且可以相应地构造URL。从本质上讲,您将使用正文的onload
事件(或 JQuery 中的 $(document).ready
)来调用 javascript,它将图像的 src
属性设置为您需要使用的 URL。
我遇到了同样的问题,但后来意识到我可以通过以下方式解决它:
在 tomcat 中有一个启动页面,例如 index.html,它在会话开始时自动调用并执行以下操作:
<!DOCTYPE html>
<html>
<head>
<script>
var init=function() {
var noi=window.innerHeight;
url="myPage.jsp?rows="+noi;
cm=document.getElementById('cm');
cm.href=url;
cm.click();
}
</script>
</head>
<body onload=init()>
<A style='' id=cm HREF=''> </A>
</body>
在"myPage.jsp"页面中,收集 Java 代码中的变量"rows"你准备好滚了!
- 检测非移动页面上的移动设备屏幕宽度和高度
- 根据屏幕宽度显示块
- 使用angular缩放大图像以适应屏幕宽度
- 访问CSS媒体查询中的屏幕宽度和高度
- 根据屏幕宽度大小包括PHP
- 根据屏幕宽度自动调整固定宽度布局
- 基于屏幕宽度的URL重定向
- 根据屏幕宽度加载不同的图像
- 在 jsp 中获取屏幕宽度作为变量
- 在手持/智能设备上使用不同浏览器时的屏幕宽度问题
- 使JS响应屏幕宽度
- 当屏幕宽度减小时,Bootstrap Form下拉菜单停止工作
- JavaScript-如何将onload函数内部定义的变量取到外部
- Jquery,当屏幕宽度为1050px时删除类
- 与Jquery不同,当屏幕宽度为1050px时删除类
- Javascript Div's宽度根据屏幕宽度
- 用户's屏幕's高度&要保存在变量中的宽度
- Javascript在PHP变量中获取屏幕宽度
- 使用Ajax获取PHP变量中的屏幕宽度值
- 可以IE8/9屏幕.宽度变量会在单个设备上报告不同的分辨率