Кнопки подсказки - дерганье

Issue #221 closed
Oleg Sychev repo owner created an issue

Originally reported on Google Code with ID 221

Попробуйте нажать на подсказку тестирования выражения и т.д.

Она почему-то перескакивает вверх формы авторинга, где наверху образуется надпись "skip
to main contents"

Надо это привести в чувство...

Reported by oasychev on 2013-09-06 19:59:18

Comments (15)

  1. Valeriy Streltsov
    Такое поведение появляется только если наш ajax-диалог не помещается целиком на экран.
    
    По поводу надписи: https://github.com/moodle/moodle/blob/master/lib/outputrequirementslib.php#L278
    
    Вроде её добавление никак не контролируется, странно всё это...
    

    Reported by vostreltsov on 2013-09-07 05:56:11

  2. Oleg Sychev reporter
    Accessibility - это штуки для людей с ограниченными возможностями - инвалидами по зрению
    и т.д. Чего она тут мешается - вопрос интересный. Но скрыть ее принудительно наверное
    можно, вот успеть вмешаться чтобы не дрыгнулось к ней - это вопрос...
    
    Если заметили, то первое нажатие на крестик на подсказке закрывает надпись "skip to
    main contents", а второе - уже саму подсказку.
    

    Reported by oasychev on 2013-09-07 10:37:40

  3. Oleg Sychev reporter
    http://docs.moodle.org/dev/Moodle_Accessibility_Specification 
    Там можно найти про эту ссылку, пользуясь словом skip
    Нужна чтобы людям с читалками пропускать навигацию и прочие блоки и сразу читать страницу.
    На всяких всплывающих окнах, где никаких блоков и меню нет, можно смело удалять.
    
    Остался вопрос с 
    

    Reported by oasychev on 2013-09-18 22:29:20

  4. Oleg Sychev reporter
    Видимо при открытии формы авторинга, обработчик второй раз на них всех навешивается...
    

    Reported by oasychev on 2013-09-18 22:30:22

  5. Oleg Sychev reporter
    Класс который require яваскрипт к сожалению не имеет функций для "отмены" этого...
    
    Чисто технически можно конечно перехватить вывод PHP и вырезать из него зловредный
    скрипт - но это очень evil hack.
    

    Reported by oasychev on 2013-09-18 23:52:33

  6. Oleg Sychev reporter
    Есть еще идея: если мы не можем "undelegate" существующий скрипт с кнопок подсказки,
    то можем же попробовать делегировать им третий скрипт, который проверит количество
    окошек и закроет (или удалит) лишние.
    

    Reported by oasychev on 2013-09-20 17:47:37

  7. Valeriy Streltsov
    Пока что решено preg_replace'ом.
    

    Reported by vostreltsov on 2013-09-20 18:21:04 - Status changed: Fixed

  8. Oleg Sychev reporter
    Надо сделать какой-нибудь optional_param типа "nohelp" или "secondtime" или еще что-то
    такое...
    Чтобы если preg_authoring.php вызывался из другого места, где скрипт не отработал ни
    разу, хелп-кнопки работали...
    

    Reported by oasychev on 2013-09-20 18:34:26

  9. Oleg Sychev reporter
    Давайте сделаем настройку - нужно ли вырезать.
    Авторинг не только из Preg может запрашиваться...
    

    Reported by oasychev on 2013-09-23 20:34:08 - Status changed: InProgress

  10. Oleg Sychev reporter
    Еще проблема в дерганьях при нажатии на подсказку после скроллинга!
    

    Reported by oasychev on 2013-10-11 19:11:52

  11. Oleg Sychev reporter
    Я вижу два способа поискать причину дерганий: 
    1-й посмотреть код display_panel который вызывается - я грепом display_panel: function
    нашел несколько файлов...
    2-й попробовать вернуть skip to main content, но сделать ее невидимой и координатами
    загнать где-нибудь посреди формы
    не зря она там появлялась изначально при хелпе - есть подозрение, что дергается на
    самый верх экрана именно из-за нее - не находит на диалоге удаленную и ищет в главном
    окне....
    

    Reported by oasychev on 2013-10-18 18:08:40

  12. Valeriy Streltsov
    В общем в колбеке загрузки самого popup-диалога есть такая строчка:
    this.get('buttons').header[0].focus();
    Это кнопка закрытия popup-диалога, но почему оно пролистывается наверх - я не понимаю.
    

    Reported by vostreltsov on 2013-10-19 05:28:25

  13. Oleg Sychev reporter
    Мало того что оно дергается, у меня сейчас если заголовок нашего диалога не виден на
    экране, то хелп просто не закрывается. Пока его не перетащишь так, что заголовок нашего
    диалога на экране появляется...
    

    Reported by oasychev on 2013-10-21 22:36:43

  14. Oleg Sychev reporter
    Вроде в Chrome само устранилось в новой версии Moodle, прошу перепроверить на других
    компьютерах/браузерах.
    

    Reported by oasychev on 2014-03-27 13:45:24

  15. Log in to comment