Я пытаюсь настроить обратный вызов на клик для HTML, который вызывает видимость другого node. Попутно я был удивлен, узнав, что следующие два утверждения не эквивалентны:
$("#title").click($("#content").toggle);
$("#title").click(function() {
$("#content").toggle();
}
Первое утверждение в конечном итоге приводит к типу TypeError, когда элемент наконец-то нажат, сообщение "undefined не является функцией", которое, как я предположил, указывает, что все, что мне было присвоено вызову onclick, оказалось undefined и как-то не сохраняется в памяти.
Обходной путь прост (просто используйте инструкцию второй формы), но я действительно хочу понять, почему передача функции переключения в качестве объекта не работает, когда она наконец вызвана. Я вижу, что эти два семантически отличаются: первый выполняет вызов $("#content")
при привязке события, а другой выполняет его, когда происходит событие, но я не понимаю, почему это имеет значение.
В случае, если это имеет отношение к ответу, соответствующий код находится внутри функции (которая предположительно возвращается к моменту, когда пользователь может нажать что-либо).