我正在使用一个 Wordpress 网站,在那里我正在构建一个导航栏。我想添加的功能之一是,如果您在某个页面上,导航栏中的选项将加粗以表示您正在访问的网站部分。
我正在尝试使用 JavaScript 来实现这一点,因为我没有 PHP 的工作知识:
var current_page = document.URL;
var current_option_id="";
if(current_page==="some-url"){
current_option_id="menu-item-34";
}
document.getElementById(current_option_id).getElementsByTagName("A")[0].style.fontWeight="bold";
基本上,我的代码会确定我们在哪个页面上,并将正确的菜单选项的 id 分配给current_option
变量。然后,脚本将尝试选择正确的菜单选项,选择该菜单选项内的链接,并更改其样式。
这个脚本的问题是它根本无法工作,在无法选择 HTML 元素的地方产生错误;document.getElementById(current_option);
返回空值。但是,当我在控制台中执行此操作时,它工作正常,并且样式已正确更改。为什么是这样?我知道该current_option
变量具有正确的值,但脚本在尝试选择要更改的元素时失败。
非常感谢任何建议和帮助。如果您知道如何在 PHP 中使用可以与 Wordpress 很好集成的东西来做到这一点,请分享(并解释您的代码是如何工作的!)。如果我违反了任何 StackOverflow 规则,我深表歉意。