大家好,又见面了,我是你们的朋友全栈君
使用基于Java的后端(即servlet和JSP),如果我需要JavaScript的contextPath,那么推荐的模式是什么?为什么?我可以想到几种可能性。我缺少任何吗?
1.将SCRIPT标记刻录到在某些JavaScript变量中设置的页面中
这是准确的,但在加载页面时需要脚本执行。
2.在一些隐藏的DOM元素中设置contextPath
这是准确的,并且在加载页面时不需要任何脚本执行。但是你需要一个DOM查询时需要访问contextPath。如果你关心性能的话,DOM查询的结果可以被缓存。
3.尝试通过检查document.URL或BASE标记在JavaScript中找出来
function() {
var base = document.getElementsByTagName(‘base’)[0];
if (base && base.href && (base.href.length > 0)) {
base = base.href;
} else {
base = document.URL;
}
return base.substr(0,
base.indexOf(“/”, base.indexOf(“/”, base.indexOf(“//”) + 2) + 1));
};
这不需要在加载页面时执行任何脚本,并且还可以在必要时缓存结果。但是这只有当你知道你的上下文路径是一个单一的目录 – 而不是根目录(/)或多个目录下(/ mypath / iscomplicated /)。
哪种方式我倾斜
我赞成隐藏的DOM元素,因为它不需要在页面加载时执行JavaScript代码。只有当我需要contextPath,我需要执行任何东西(在这种情况下,运行一个DOM查询)。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/193482.html原文链接:https://javaforall.cn