В jQuery я так много делаю:
$('#myId').bind('myevent', function() { ... }).trigger('myevent');
Отлично работает, когда селектор находит только один элемент, но я не хочу, чтобы он срабатывал более одного раза, если найдено более одного совпадения.
Есть ли какой-нибудь способ объявить анонимную функцию и выполнить ее ровно один раз за один проход?
Или вам нужно сделать его неанонимным (дать ему имя), передать его и вызвать его один раз вручную?
Например, я могу связать событие .change
с набором переключателей. В обратном вызове я проверяю, какой из них действительно установлен, а затем показываю / скрываю div. Когда страница загружается, div должен быть в правильном состоянии, поэтому я запускаю событие один раз и позволяю JS выяснить, следует ли показывать его. Но я не хочу, чтобы он срабатывал 3 раза, потому что у меня 3 переключателя.