Я следующий сценарий:Нажмите Event не работает После Class Change
// dashboard maximize
$('#dashboard-actions .btn-maximize').click(function() {
// max/restore buttons
$(this).removeClass('btn-maximize').addClass('btn-restore');
$(this).find('span').removeClass('icon-maximize').addClass('icon-restore');
// swap tables
$('#table-dashboard-actions-mini').hide();
$('#table-dashboard-actions').show();
// show form
$('#form-dashboard-actions-btm').show();
// restyle panel
$(this).parents('.panel-dashboard').addClass('panel-dashboard-max');
// animate panel
$(this).parents('.panel-dashboard').animate({
width: "100%",
}, 250, function() {
// Animation complete.
});
$(this).parents('.panel-primary').animate({
height: "725px"
}, 250, function() {
// Animation complete.
});
});
Как вы можете видеть, в какой-то момент сценарий изменяет класс щелкнул кнопкой на .btn-restore
Однако это означает, что Я не могу показаться, чтобы связать событие .btn-restore
Я первоначально имел это:
// dashboard restore
$('#dashboard-actions .btn-restore').click(function() {
alert('asdf');
});
И предупреждения заявление не работает, поэтому я изменил его к этому:
$('#dashboard-actions .btn-restore').on('click', function() {
Но до сих пор нет радости. Может ли кто-нибудь увидеть, что я делаю неправильно?
Событие делегата, например: '$ ('# dashboard-actions'). On ('click', '.btn-restore', function() {...});'. И если вы хотите удалить ранее связанное событие в '.btn-maximize', делегировать это событие слишком –