@phpgeeks

Страница 1318 из 8430
Pavel
29.09.2016
20:46:26
Ну я уже делал так. Все то же самое было. Мб не правильно делал, но все же

за 2 дня я что только не пробовал

Wingman
29.09.2016
20:47:15
Хуево биндить одно и то же действие после наступления события, которое может произойти больше одного раза

Timur
29.09.2016
20:47:16
Павел. Ну смотри. Допустим есть кнопка <button id="submit" /> Ты можешь навесить на нее обработчик событий. Допустим на событие "клик" $('#submit').click(function() { console.log("Неведомая хуйня"); }); Всё, к кнопке привязан 1 обработчик. При клике по кнопке, он будет вызываться и в консоль выведется Неведомая хуйня Если мы снова вызовем этот блок $('#submit').click(function() { console.log("Неведомая хуйня"); }); То на кнопку навесится второй обработчик, предыдущий не удаляется. Теперь, при клике по кнопке, в консоль выведется Неведомая хуйня Неведомая хуйня Чтобы такого дерьма не происходило, перед навешиванием обработчика, предыдущий надо удалять с помощью функции unbind(). Она принимает два параметра: тип события и имя предыдушего обработчика, но проблема в том, что у тебя в коде используется безымянная функция (он же обработчик), так что ты не сможешь ее найти, чтобы удалить. Поэтому дай функции имя, например mazafaka, и тогда ты сможешь удалить его вот так: $('#submit').unbind('click', 'mazafaka');

Google
Wingman
29.09.2016
20:48:02
Все логично же

Pavel
29.09.2016
20:48:43
По моей логике функция капча должна растворится в воздухе после вызова функции гет трек

Wingman
29.09.2016
20:49:23
Схуя бы?)

Pavel
29.09.2016
20:49:38
Так. А как дать функции имя? captcha.find('#submit').click(function (name) { ?

Хуй знает, мой пхп-мозг так думает)

Для меня жс это магия на костылях на палках. Боюсь его до ужаса

Wingman
29.09.2016
20:50:34
Делай просто документ.он клик

Один раз

И все

Pavel
29.09.2016
20:51:19
окей

Timur
29.09.2016
20:51:30
Так. А как дать функции имя? captcha.find('#submit').click(function (name) { ?
определи функцию отдельно, и отправляй ее имя в качестве аргумента. Сейчас дам пример

Pavel
29.09.2016
20:51:40
ок

Google
Pavel
29.09.2016
20:51:52
А при документ.он клик он дубликатов не создает?

Timur
29.09.2016
20:52:25
Создает

Wingman
29.09.2016
20:53:25
Ну не

Главное создавай этот бинд отдельно, в глобальном жс

Timur
29.09.2016
20:53:56
var mazafaka = function (e) { // Это твоя функция, он же обработчик }; $('#submit').click(mazafaka); Чтобы снять с кнопки этот обработчик, пишешь $('#submit').unbind('click', mazafaka);

Wingman
29.09.2016
20:53:59
А не по событию или в цикле

Pavel
29.09.2016
20:55:56
Все, понял. А прямо внутри обьявления обработчика можно назвать?

Или только так

Timur
29.09.2016
20:56:25
может и можно, но мне в голову не приходит ничего

Pavel
29.09.2016
20:56:41
И где мне тогда снимать обработчик? После вызова гет трек?

или в конце функции showCaptcha

Реально ли вообще снять бинд внутри бинда?...

Под конец так сказать

Timur
29.09.2016
20:57:36
Прямо перед навешиванием обработчика можешь его снимать

Dead
29.09.2016
20:58:16
тот самый момент, когда зашел в php чат ?

Wingman
29.09.2016
20:58:19
А зачем снимать его?

Pavel
29.09.2016
20:58:28
))

Ну, чтобы не было несколько запросов за один клик

Timur
29.09.2016
20:58:42
А зачем снимать его?
Снимать не его, а предыдущий обработчик

Wingman
29.09.2016
20:58:56
Так он у него одинаковый

Google
Wingman
29.09.2016
20:59:11
Смысл перевешивать?

Timur
29.09.2016
20:59:38
Он одинаковый, но навешивает он его два раза. Почему навешивает два раза? Не знаю, не разбирался, я лишь даю ответ.

$('#submit').unbind('click', mazafaka); $('#submit').click( mazafaka); Тут обработчик будет навешиваться всегда только один раз, потому что предыдущий будет всегда удаляться

Пусть меняет логику

Timur
29.09.2016
21:00:57
Навешивать клик на весь документ? Зачем?

Wingman
29.09.2016
21:00:59
Ничё больше не надо ни вешать, ни снимать

Pavel
29.09.2016
21:01:19
Он не всегда же нужен

Wingman
29.09.2016
21:01:28
В смысле документ.он.клик(сабмит

Timur
29.09.2016
21:02:02
В смысле документ.он.клик(сабмит
То есть куда бы я ни кликнул, будет происходить сабмит что ли? :D

Wingman
29.09.2016
21:02:07
Он не всегда же нужен
Нутак когда не нужен - кнопки и нет на экране, не?

Pavel
29.09.2016
21:02:33
Ну дк прикинь у меня таких кнопок сотни и все разные. Че их все в глобале держать?

Wingman
29.09.2016
21:03:00
$(document).on('click', '#submit', function(){})

Дак на разные кнопки - разные обработчики

Или ченить типа data-action="abc", а в обработчике проверять $(this).data('action')

Timur
29.09.2016
21:04:44
Ну дк прикинь у меня таких кнопок сотни и все разные. Че их все в глобале держать?
Вытащи этот блок из функции showCaptcha captcha.find('#submit').click(function () { var key = captcha.find('#key').text(), captchaParams = { sid: sid, key: key }; captcha.modal('hide'); getTrack(id, captchaParams); });

Pavel
29.09.2016
21:05:10
Да, я понял уже.

Спасибо всем

Wingman
29.09.2016
21:05:31
И ваще, сотни кнопок с одним Id? Нуну)

Google
Timur
29.09.2016
21:06:34
Да, я понял уже.
У двух элементов не может быть одинаковых id, кстати

Pavel
29.09.2016
21:06:57
Да, знаю

F01134H
29.09.2016
21:09:50
https://moikrug.ru/vacancies/1000023324

php fullstack ?

Wingman
29.09.2016
21:11:28
лол

я доехал наконец

и кажется понял, в чем твоя проблема %)

@iSize1ce я правильно понимаю, что кнопки у тебя создаются динамически, в них - разные всякие sid/key, и поэтому ты пытаешься каждый раз создавать новую функцию-биндинг с разными sid/key?

Pavel
29.09.2016
21:13:06
Не, мне бинд разный не нужен. Я так сделал потому что псевдоинкубация

каждая функция за свой функционал отвечает

Admin
ERROR: S client not available

Pavel
29.09.2016
21:13:29
Но тут чет не сраслось

da horsie
29.09.2016
21:14:04
Волшебный мир жаваскрипта

Pavel
29.09.2016
21:14:08
Я щя просто создам бинд и разрушу

Wingman
29.09.2016
21:15:59
все равно изврат какой-то :)

функция-то одна и та же, откуда там "каждая за свой функционал"

Pavel
29.09.2016
21:22:16
Насколько это говнокод? http://prntscr.com/cnxt2m

Wingman
29.09.2016
21:24:24
изврат ;(

Sergey
29.09.2016
21:24:50
а ты как думал?

Google
f4rt~
29.09.2016
21:25:19
а ты как думал?
так и думал, просто интересно было взглянуть на пример ?

Pavel
29.09.2016
21:25:20
Вот только чет модальное окно не закрывается до конца

Sergey
29.09.2016
21:25:29
все делятся )

Pavel
29.09.2016
21:25:31
после пары кликов окно черное

Sergey
29.09.2016
21:25:43
и, в целом, это норм

f4rt~
29.09.2016
21:27:58
и, в целом, это норм
ну не знаю, я немного повернут на этом)

Sergey
29.09.2016
21:28:52
ну не знаю, я немного повернут на этом)
ну, если ты продаешь наркотики, детскую порнуху или занимаешься продвижением вредных идеологий типа фашизма...ну или способствуешь терроризму, то да за тобой будут следить

а если ты любишь вздрочнуть на порно и периодически девкам члены шлеш - это никому не интересно

Wingman
29.09.2016
21:29:59
Насколько это говнокод? http://prntscr.com/cnxt2m
лучше как-то так http://prnt.sc/cnxw25

Pavel
29.09.2016
21:30:58
А не лучше ли создать форму и не через клик а через сабмит?

f4rt~
29.09.2016
21:31:03
Wingman
29.09.2016
21:31:18
человек каждый раз бинд вешает на кнопку)

Wingman
29.09.2016
21:31:29
при показе модала

Sergey
29.09.2016
21:31:55
я считаю, что интернет тоже по паспорту надо выдавать

вот назвал ты меня, допустим, пидорасом

f4rt~
29.09.2016
21:32:15
ну, вот ты в торе бывал? ) мне такая свобода не нужна )
Тор + впн, суть даже не в свободе, а в самом факте посягательства.

Sergey
29.09.2016
21:32:17
а я вызвал милицию, прям к тебе

Pavel
29.09.2016
21:32:26
не, я понял что бинд вешается постоянно

ну просто придется же еще на ентер биндить

как полноценную форму

есть же бинд сабмит? или это в jquery только .submit есть

Страница 1318 из 8430