尝试隐藏具有特定类的元素(“input-container”的类),除非存在特定的URL参数。我已经完成了以下代码,但似乎无法使其正常工作。if/else语句已经使用警报进行了测试,因此我知道该部分正在工作。这就是我试图给display变量赋值的地方,代码似乎要崩溃了。不幸的是,我不得不使用类名而不是ID来做这件事。
<script>
var isadmin = document.getElementsByClassName("input-container");
if (window.location.search.indexOf('admin=yes') > -1) {
isadmin[0].style.display = "block";
} else {
isadmin[0].style.display = "none";
}
</script>
发布于 2018-07-03 05:02:32
事实证明,这是座椅和键盘之间的一个问题。我是个笨蛋,没有意识到Javascript是在元素加载之前执行的。修复了以下代码的问题...
<script>
window.onload = hidePass;
function hidePass() {
var isadmin = document.getElementsByClassName('input-container')[0];
if (window.location.search.indexOf('admin=yes') > -1) {
isadmin.style.display = "block";
} else {
isadmin.style.display = "none";
}
}
</script>
发布于 2018-06-28 08:40:10
你的代码看起来没问题。我想知道为什么不工作。不管怎样,我会试试这个
<script>
var isadmin = document.getElementsByClassName("input-container");
var url = new URL(window.location);
if (url.searchParams('test') && url.searchParams('test') == 'yes') {
isadmin[0].style.display = "block";
} else {
isadmin[0].style.display = "none";
}
</script>
https://stackoverflow.com/questions/51073115
复制相似问题