powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Почему click срабатывает сразу, а не при щелчке?
7 сообщений из 7, страница 1 из 1
Почему click срабатывает сразу, а не при щелчке?
    #38084174
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: javascript
1.
2.
3.
function edit(id, callback) {
    $('button').click(callback(id));
}

callback(id) запускается сразу же, хотя по идее должен при щелчке. Почему так?
...
Рейтинг: 0 / 0
Почему click срабатывает сразу, а не при щелчке?
    #38084179
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
потому что надо
Код: javascript
1.
2.
3.
function edit(id, callback) {
    $('button').click(function() { callback(this.id); });
}
...
Рейтинг: 0 / 0
Почему click срабатывает сразу, а не при щелчке?
    #38084194
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эх, а первый вариант красивее был, жаль что не работает...
...
Рейтинг: 0 / 0
Почему click срабатывает сразу, а не при щелчке?
    #38084214
Shitbox2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только не пойму, разве this.id не относится к внутренней функции и поэтому не будет работать?
Разве не должно быть так
Код: javascript
1.
2.
3.
4.
function edit(id, callback) {
    var self = this;
    $('button').click(function() { callback(self.id); });
}


или так
Код: javascript
1.
2.
3.
function edit(id, callback) {
    $('button').click(function() { callback(id); });
}


или даже так
Код: javascript
1.
2.
3.
function edit(id, callback) {
    $('button').click({'id':id}, function(e) { callback(e.data.id); });
}
...
Рейтинг: 0 / 0
Почему click срабатывает сразу, а не при щелчке?
    #38084218
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, точно. предлагаю оставить вариант
Код: javascript
1.
2.
3.
function edit(id, callback) {
    $('button').click(function() { callback(id); });
}
...
Рейтинг: 0 / 0
Почему click срабатывает сразу, а не при щелчке?
    #38084272
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shitbox2разве this.id не относится к внутренней функции http://dmitrysoshnikov.com/ecmascript/ru-chapter-3-this/
...
Рейтинг: 0 / 0
Почему click срабатывает сразу, а не при щелчке?
    #38084611
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shitbox2Эх, а первый вариант красивее был, жаль что не работает...Ну дак сделайте, чтобы работал, если хочется "красивее"
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Почему click срабатывает сразу, а не при щелчке?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]