用于多元素和多函数的jquery on()

jquery on() for multiple element and multiple function

本文关键字:on jquery 函数 元素 用于      更新时间:2023-09-26

我是jquery或javascript的初学者。我想知道有没有为多个元素和多个函数编写一个点击事件。

例如,我有很多按钮,当点击时会执行不同的功能。是否有将所有功能都包含在1次点击事件中?像"点击文档"一样,"按钮1"将执行"功能…","按钮2"将执行"功能…"。

更像是开关盒风格??

您可以这样做,是的,但这不是最佳实践。它看起来像这样:

$(document).on("click", "button", function() {
    switch (this.id) { // (Or whatever you want to use to differentiate the buttons)
        case "button1":
            // Do button1's stuff
            // ...
            break;
        case "button2":
            // Do button2's stuff
            // ...
            break;
        // ...and so on...
    }
});

但是使用单独的处理程序要好得多。如果您动态添加和删除按钮,它们仍然可以被委派:

$(document)
    .on("click", "#button1", function() { // Again, it doesn't have to be an id...
        // button1's stuff here
    })
    .on("click", "#button2", function() { // ...just whatever differentiates the buttons
        // button2's stuff here
    });