我正在使用jquery data()附加一个div的名称,该名称要在单击另一个div(.panel_button)时显示。当文档准备好时,我正在将该div的ID附加到按钮上。这是一种可行的方法吗?还是过于耗费资源且看起来不专业?

$(document).ready(function(){

    $('#sample_button').data('panel', 'sample_kit_container');
    $('#mail_button').data('panel', 'mail_container');
    $('#mbillboard_button').data('panel', 'mbillboard_container');

    $('.panel_button').on('click', function(){

        $('.secondary_panel').hide();
        var panel = $(this).data('panel');
        $('#' + panel).show();

    });

});

最佳答案

是的,那应该很好。另外,您可以存储实际的元素本身(假设它已经存在),而不是每次都查找它:

$('#sample_button').data('panel', $('#sample_kit_container'));
$('#mail_button').data('panel', $('#mail_container'));
$('#mbillboard_button').data('panel', $('#mbillboard_container'));

$('.panel_button').on('click', function(){

    $('.secondary_panel').hide();
    var panel = $(this).data('panel');
    panel.show();

});

10-04 15:25
查看更多