Как предотвратить продолжение какого-либо события после нажатия на элемент (jQuery)? - PullRequest
0 голосов
/ 08 сентября 2011

Я пытаюсь поэкспериментировать с созданием чего-то, что вы можете оценить по номеру. звезд. Однако после того, как я щелкну по рейтингу, который хочу, и количество звездочек будет распечатано, я все равно могу нажать на звездочки и изменить значение. Как я могу остановить все события после нажатия?

Это демонстрация jsFiddle моей проблемы:

http://jsfiddle.net/3pMuy/

Ответы [ 3 ]

2 голосов
/ 08 сентября 2011

Флаг подсказывает не плохо.Это поможет вам.

Не самое лучшее решение, но .. эй, посмотрите!

http://jsfiddle.net/3pMuy/21/

2 голосов
/ 08 сентября 2011

Вы можете использовать .one [документы] .Связанный с этим обработчик событий будет выполнен только один раз.

1 голос
/ 08 сентября 2011

Ваш код связывает событие jQuery каждый раз, когда вы наводите на него звездочку, это плохо.

Кстати, Это Демо - решение для вашей версии с добавленной строкой:

$('ul li').unbind("click").unbind("mouseenter").unbind("mouseleave");

Я предлагаю вам рассмотреть возможность перемещения привязки клика за пределы события hover и использовать .one()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...