Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Проблемы с установкой или работой phpBB 3.1.x? Получите помощь здесь!
С 1 июля 2018 года phpBB Group прекращает поддержку phpBB версии 3.1.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.1 до 1 января 2019 года.
Подробнее: Окончание поддержки phpBB 3.1.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
KimIV
phpBB 2.0.1
Сообщения: 286
Стаж: 8 лет 7 месяцев
Откуда: Кунгур
Благодарил (а): 166 раз
Поблагодарили: 21 раз

Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KimIV »

Собственно весь вопрос в названии темы, а тут пояснения.
Вставляю в сообщение штук цать картинок/фоток и при каждом нажатии на кнопку "Вставить в текст сообщения" фокус перебрасывается в то место сообщения, куда вставляется картинка/фотка. Можно это как-то выключить? И возвращаться в текст сообщения, только по своему желанию, а не автоскроллом?
Ты должен делать добро из зла, потому что его больше не из чего делать. Уоренн Роберт Пенн.
Аватара пользователя
LavIgor
Former team member
Сообщения: 3468
Стаж: 10 лет
Благодарил (а): 41 раз
Поблагодарили: 831 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение LavIgor »

KimIV, можно, если сделать правку в шаблоне.
Но это сомнительное действие, поскольку непонятно, зачем тогда вообще вставлять картинки в сообщение, если они всё равно отобразятся внизу.
Аватара пользователя
KimIV
phpBB 2.0.1
Сообщения: 286
Стаж: 8 лет 7 месяцев
Откуда: Кунгур
Благодарил (а): 166 раз
Поблагодарили: 21 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KimIV »

LavIgor писал(а): Но это сомнительное действие, поскольку непонятно, зачем тогда вообще вставлять картинки в сообщение, если они всё равно отобразятся внизу.
Да нет, не сомнительное... Я часто фотки вставляю в одно место теста и сразу по 3-4 штуки. И честно говоря задалбывает после нажатия кнопки "Вставить в текст сообщения" перебрасывание скроллингом обратно в текст сообщения, где я только что был и поставил курсор, куда надо. Приходиться листать снова вниз и находить то изображение которое надо вставить следующим. И так несколько раз.

А хотелось бы постить по следующему сценарию.
1. Загрузить фотки
2. Копи-паст текста (их я обычно готовлю в Notepad++ и сразу со всеми BBCode)
3. Поставил курсор туда, куда надо вставить первые несколько картинок.
4. Жмакаю по нескольким "Вставить в текст сообщения".
5. Возвращаюсь в текст и переставляю курсор в другое место.
6. Возвращаюсь к картинкам и снова жмакаю по нескольким "Вставить в текст сообщения".
7. Повторяю пп. 5 и 6.
Ты должен делать добро из зла, потому что его больше не из чего делать. Уоренн Роберт Пенн.
Аватара пользователя
LavIgor
Former team member
Сообщения: 3468
Стаж: 10 лет
Благодарил (а): 41 раз
Поблагодарили: 831 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение LavIgor »

KimIV, есть такая функция attachInline.
Самый невинный способ - это переопределить её в расширении.
Более жёсткий (не рекомендуется) - править прямо в шаблоне.
Можно править шаблон, если стиль собственный.

В общем, функция должна принять следующий вид:

Код: Выделить всё

function attachInline(index, filename) {
	insert_text('[attachment=' + index + ']' + filename + '[/attachment]', false, true);
	document.forms[form_name].elements[text_name].focus();
}
Т.е. нужно добавить , false, true к строке параметров insert_text.
romeo_piter
phpBB 2.0.21
Сообщения: 1322
Стаж: 15 лет 1 месяц
Благодарил (а): 159 раз
Поблагодарили: 21 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение romeo_piter »

Тоже прикручу это дело, тк возврат реально раздражает.

А нельзя ли сделать какую-то индикацию вставки, т.е. если клацнули на кнопку - она меняет цвет или лучше текст меняется на "Изо вставлено"?
Аватара пользователя
KimIV
phpBB 2.0.1
Сообщения: 286
Стаж: 8 лет 7 месяцев
Откуда: Кунгур
Благодарил (а): 166 раз
Поблагодарили: 21 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KimIV »

romeo_piter писал(а): возврат реально раздражает
Это даже не то слово... Видимо заточено под 2-3 фотки в разных местах сообщения. А у меня на форуме посты в среднем содержат 15-20 фоток.

Было бы не плохо этот автоскролл к элементу с фокусом ввода вкл/выкл в админке.
Ты должен делать добро из зла, потому что его больше не из чего делать. Уоренн Роберт Пенн.
Аватара пользователя
KimIV
phpBB 2.0.1
Сообщения: 286
Стаж: 8 лет 7 месяцев
Откуда: Кунгур
Благодарил (а): 166 раз
Поблагодарили: 21 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KimIV »

Пока что-то не получается... Сделал расширение, которое инклудит editor.js с исправленной attachInline. Теперь при нажатии на кнопку "Вставить в текст сообщения" просто тупо ничего не происходит. Ни автоскролл, ни вставка вложения в текст сообщения...
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ты должен делать добро из зла, потому что его больше не из чего делать. Уоренн Роберт Пенн.
Аватара пользователя
KimIV
phpBB 2.0.1
Сообщения: 286
Стаж: 8 лет 7 месяцев
Откуда: Кунгур
Благодарил (а): 166 раз
Поблагодарили: 21 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KimIV »

Ну вообщем добил я это расширение. У меня заработало, как мне надо, то есть при нажатии на кнопку "Вставить в текст сообщения", происходит вставка вложения в то место сообщения, где перед нажатием стоял курсор. И при этом фокус с кнопки не смещается, не происходит мотыляние автоскроллом.

Что переделал:
1. Инклуд editor.js перенёс в событие quickreply_editor_message_before.html. Думаю, это будет правильнее.
2. Выполнил следующие правки файла editor.js

Найти:

Код: Выделить всё

	if (!popup) {
		textarea.focus();
Заменить на:

Код: Выделить всё

	if (!popup) {
//		textarea.focus();
Найти:

Код: Выделить всё

   insert_text('[attachment=' + index + ']' + filename + '[/attachment]');
   document.forms[form_name].elements[text_name].focus();
Заменить на:

Код: Выделить всё

   insert_text('[attachment=' + index + ']' + filename + '[/attachment]');
//   document.forms[form_name].elements[text_name].focus();
Найти:

Код: Выделить всё

	txtarea.focus();
	txtarea.scrollTop = scrollTop;
Заменить на:

Код: Выделить всё

//	txtarea.focus();
	txtarea.scrollTop = scrollTop;
ЗЫ. Это первый блин, поэтому с огромной благодарностью восприму любой разнос и критику.

Отправлено спустя 5 минут 12 секунд:
Кстати, может кто посоветует, как расширение назвать. А то мне уже "Redefine attachInline" не нравится. Надо как-то поближе к объяснению функционала, типа "Отключение автоскролла при вставке вложения в сообщение". Но это очень длинно, да и не уверен я в правильности названия эффекта "автоскролл".

Отправлено спустя 1 час 54 минуты 14 секунд:
Вообщем решил назвать расширение "Disable scrolling when inserting attachments - Отключение скроллинга при вставке вложений." Кратко "dswia" :D
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ты должен делать добро из зла, потому что его больше не из чего делать. Уоренн Роберт Пенн.
Аватара пользователя
KimIV
phpBB 2.0.1
Сообщения: 286
Стаж: 8 лет 7 месяцев
Откуда: Кунгур
Благодарил (а): 166 раз
Поблагодарили: 21 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KimIV »

А чё никто ничего не пишет про косяки? Не нашли что-ли ещё. Я нашёл один случайно. Перестало работать быстрое цитирование в мобильном boat browser. И ещё один из пользователей сообщил, что его по прежнему перекидывает в верх. Запросил у него название и версию браузера.
Ты должен делать добро из зла, потому что его больше не из чего делать. Уоренн Роберт Пенн.
Аватара пользователя
KEMnEP
phpBB 2.0.17
Сообщения: 1126
Стаж: 9 лет 1 месяц
Благодарил (а): 42 раза
Поблагодарили: 283 раза

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KEMnEP »

KimIV писал(а): А чё никто ничего не пишет про косяки?
учить взрослого, не благодарное дело и себе дороже выйдет (не подумайте только, что я смотрел расширение, не говоря уже о поиске в нём ошибок, вечная нынче нехватка времени...)
Аватара пользователя
KimIV
phpBB 2.0.1
Сообщения: 286
Стаж: 8 лет 7 месяцев
Откуда: Кунгур
Благодарил (а): 166 раз
Поблагодарили: 21 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KimIV »

оффтоп 
KEMnEP писал(а): учить взрослого, не благодарное дело и себе дороже выйдет
Ну я как бэ писал
KimIV писал(а): ЗЫ. Это первый блин, поэтому с огромной благодарностью восприму любой разнос и критику.
Ты должен делать добро из зла, потому что его больше не из чего делать. Уоренн Роберт Пенн.
Аватара пользователя
KimIV
phpBB 2.0.1
Сообщения: 286
Стаж: 8 лет 7 месяцев
Откуда: Кунгур
Благодарил (а): 166 раз
Поблагодарили: 21 раз

Re: Как выключить скроллинг при нажатии на кнопку Вставить в текст сообщения?

Сообщение KimIV »

Обновлю, пожалуй... Были кое-какие правки примерно в середине Января 2016. После этого экст обкатался на моём форуме, да и до сих пор катается :D Всё ровно, пользователи довольны.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ты должен делать добро из зла, потому что его больше не из чего делать. Уоренн Роберт Пенн.

Вернуться в «Поддержка phpBB 3.1.x»