Проверка нескольких флажков, как в Gmail - PullRequest
4 голосов
/ 31 декабря 2010

Я пытаюсь скопировать поведение Gmail с помощью флажков, выбирая весь диапазон, нажимая один, а затем нажимая клавишу Shift, другой, флажки между ними изменятся.

Однако япроблема совместимости между Firefox и Chrome, так как нажатие на флажки работает просто отлично, но щелчок меток каким-то образом обрабатывается совсем по-другому, поскольку Firefox, по-видимому, не будет вызывать изменения при нажатии Shift.проверьте и протестируйте мой код здесь.

Очевидно, что есть проблема с Firefox и надписью, я пытался вызвать флажок change(), но он работает в обратном направлении поведения флажка, япопытался «сбросить» события метки с помощью preventDefault(), а затем вызвать событие change(), и проблема, похоже, та же, но теперь в Chrome есть эта ошибка (что, я думаю, так или иначе,сначала гомологизировать).

Самый простой способ - найти браузеры, но каждый гуру веб-разработчика говорит нам, что лучшеЧтобы определить проблему, а не браузер, что может быть хорошим решением для этого?Кроме того, он не работает в IE, потому что он не поддерживает indexOf().

Спасибо!

1 Ответ

1 голос
/ 25 февраля 2011

По какой-то причине тег работает по-разному при выделении текста в Firefox. Я думаю, что причина его неудачи в том, что когда вы удерживаете нажатой клавишу Shift и нажимаете на метку, она не ставит флажок и, следовательно, не запускает помеченное событие.

Проверьте это: http://jsfiddle.net/xerf/Prxdn/10/

Это работает как в webkit, так и в FireFox. Я изменил метки, чтобы охватить теги. Немного CSS, вы можете исправить отступы.

...