如何检测 javascript 中的 wordpress 管理栏?
How to detect the wordpress admin bar in javascript?
我使用的导航栏在向下滚动页面时隐藏,在 Wordpress 中向上滚动时显示。
典型的问题是 WP 管理栏位于导航栏的顶部。
由于我的导航栏 srcoll 隐藏代码是在 javascript 中编写的,因此当存在管理栏:
body.admin-bar #navbar-section {
top: 32px;
}
所以我想知道如何检测 javascript 中是否存在 WP 管理栏,以便我可以使用以下代码在顶部添加 space :
if adminbar present then
document.getElementById("navbar-section").style.top = "32px";
else
document.getElementById("navbar-section").style.top = "0px";
非常感谢,因为我现在已经苦苦挣扎了很长时间...:} !
管理工具栏的 ID 为 "wpadminbar"。所以你的代码只需要引用这个:
const $wpadminbar = document.getElementById('wpadminbar');
const $navbar_section = document.getElementById('navbar-section');
if ($wpadminbar){
$navbar_section.style.top = "32px";
} else {
$navbar_section.style.top = "0px";
}
您也可以使用 Node.contains:
const $wpadminbar = document.getElementById('wpadminbar');
const $navbar_section = document.getElementById('navbar-section');
if (document.body.contains($wpadminbar)){
$navbar_section.style.top = "32px";
} else {
$navbar_section.style.top = "0px";
}
有关信息,我还找到了这个解决方案来检查给定的 html 标签是否包含给定的 class:
if (document.body.classList.contains('admin-bar')) {
document.getElementById("navbar-section").style.top = "32px";
} else {
document.getElementById("navbar-section").style.top = "0px";
}
我使用的导航栏在向下滚动页面时隐藏,在 Wordpress 中向上滚动时显示。
典型的问题是 WP 管理栏位于导航栏的顶部。
由于我的导航栏 srcoll 隐藏代码是在 javascript 中编写的,因此当存在管理栏:
body.admin-bar #navbar-section {
top: 32px;
}
所以我想知道如何检测 javascript 中是否存在 WP 管理栏,以便我可以使用以下代码在顶部添加 space :
if adminbar present then
document.getElementById("navbar-section").style.top = "32px";
else
document.getElementById("navbar-section").style.top = "0px";
非常感谢,因为我现在已经苦苦挣扎了很长时间...:} !
管理工具栏的 ID 为 "wpadminbar"。所以你的代码只需要引用这个:
const $wpadminbar = document.getElementById('wpadminbar');
const $navbar_section = document.getElementById('navbar-section');
if ($wpadminbar){
$navbar_section.style.top = "32px";
} else {
$navbar_section.style.top = "0px";
}
您也可以使用 Node.contains:
const $wpadminbar = document.getElementById('wpadminbar');
const $navbar_section = document.getElementById('navbar-section');
if (document.body.contains($wpadminbar)){
$navbar_section.style.top = "32px";
} else {
$navbar_section.style.top = "0px";
}
有关信息,我还找到了这个解决方案来检查给定的 html 标签是否包含给定的 class:
if (document.body.classList.contains('admin-bar')) {
document.getElementById("navbar-section").style.top = "32px";
} else {
document.getElementById("navbar-section").style.top = "0px";
}