好吧,这个对我来说真的很棘手,我有 2 个文件 a.php(其中我包括 b.php)和 b.php。在一个.php文件中,我回显了一个包含带有一些div的导航的变量。 在 b.php 文件中,我在变量 $layoutNavigation 中保存此导航。如何将事件侦听器添加到此$layoutNavigation中的div?我尝试了以下方法:
1)我尝试以常规方式执行此操作:
$(".navMenuOpener").on("click", openNavMenu);
function openNavMenu()
{
alert();
}
2)尝试(td 是我从 b.php 文件中回显导航的容器):
$("#container > table td").on("click", "nav > #navigation > #web_links > .navMenuOpener", openNavMenu);
function openNavMenu()
{
alert();
}
我不想重写每个 .navMenuOpener 元素 onclick 属性,因为这很混乱,我应该尝试什么?
编辑:我很确定,如果我在 a.php 文件中添加事件侦听器,一切都会正常工作,但我想将我的布局保留在 b.php 文件中,以及负责与布局有关的任何内容的脚本。
首先,您需要调用一个方法:
$(".navMenuOpener").on("click", openNavMenu()); //you are missing the parentheses
此外,如果这是在头部甚至正文中,您很可能希望等待页面呈现
$(document).ready(function(){
$(".navMenuOpener").on("click", openNavMenu());
//Other code
});