Javascript 使用相同的侦听器脚本动态加载的文件会加载两次吗?

Javascript 使用相同的侦听器脚本动态加载的文件会加载两次吗?,javascript,jquery,html,data-structures,Javascript,Jquery,Html,Data Structures,嗯。这个脚本工作得很好,但有些东西告诉我这不是一个好的编码实践。我有一个HTML文件,其中包含一个脚本,用于在div class.button框中将侦听器添加到。这个HTML文件加载另一个HTML文件(使用.load js),该文件也有一个.button box div和一个脚本,用于向其中添加侦听器 侦听器脚本只是一个查找数据元素的开关,因此代码上没有冲突(也不会有冲突)。基本上,第一个有3个案例,加载的一个增加了另外3个案例。但在我完成的页面中,我有重复的$(“.button box”)。在

嗯。这个脚本工作得很好,但有些东西告诉我这不是一个好的编码实践。我有一个HTML文件,其中包含一个脚本,用于在div class.button框中将侦听器添加到。这个HTML文件加载另一个HTML文件(使用.load js),该文件也有一个.button box div和一个脚本,用于向其中添加侦听器

侦听器脚本只是一个查找数据元素的开关,因此代码上没有冲突(也不会有冲突)。基本上,第一个有3个案例,加载的一个增加了另外3个案例。但在我完成的页面中,我有重复的$(“.button box”)。在('click','a'

这是一个编码吗?不,不,想法

编辑
上面是开关盒代码。因此,我的所有按钮都在.button box类中,当我加载页面时,我会拉入在.button box类中也有按钮的子页面。

是的,事件侦听器将再次添加。可以使用
off()
若要在绑定新开关之前先删除它们,是否也会从我的第一个开关中删除所有选项?不确定开关的确切含义,或者您的代码是什么样子请查看上述编辑。这是主页和子加载页中的代码最简单的解决方案是不加载相同的代码e两次。这是多余的。您是否尝试过像建议的那样在
on()
之前使用
off()
$(".button-box").on('click', 'a' ,function() {
    switch(this.dataset.button_ref) {
                case "download_single_file":
                    alert("Beep Bop Blop Beep BEEP!... Your File is Downloading");
                    break;
                case "other cases":
                    other code to execute when button is pressed.
                    break:
    }
}