34

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

Хотя существует расширение , такие как Не ебать с пастой для Chrome или Отключить буфер обмена манипуляциями и dom.event.clipboardevents.enabled предпочтения для FireFox, все они страдают от проблемы , что есть законные причины , почему веб - сайты могут хотят вклиниться в onpaste (например, поддержка форматированного текста в Google docs или обработка ссылок Facebook), поэтому я не хочу, чтобы эта функция была полностью отключена.

† Зайдите в about:config и найдите dom.event.clipboardevents.enabled затем дважды щелкните для переключения.

Другой вариант - взломать каждую страницу, которую вы нашли, с помощью кода, вызывающего проблемы, вручную, но это очень хлопотно и работает не во всех случаях (например, на этой странице). Одно из предложений о том, как это сделать, можно найти в « Вставить пароли» Мартина Бринкмана в блокированные поля формы на странице в Интернете .

В идеале я просто хочу сказать «Повторно включить вставку для всех полей на этой странице» в качестве кнопки или опции контекстного меню для страницы, так есть ли способ сделать это?

Самое близкое, что я обнаружил, - это повторное включение вставки пароля Дереком Приором на надоедливых веб-формах, но при этом используется тот же метод, что и при ручном методе, поэтому он не работает с конкретной страницей, с которой у меня возникли проблемы, и я понятия не имею, сколько другие методы могут быть доступны.

3 ответа3

11

Веб-формы, которые имеют эту функцию вставки блокировщика, могут реализовать его декларативно, используя атрибут onpaste для текстового поля или связав событие через JavaScript или jQuery.

Вопреки тому, что вы заявили, я смог заставить буклет Дерека Приора работать в Chrome (версия 39 для Windows) со страницами, которые имели атрибуты (type = "password" onPaste = "return false") в текстовом поле пароля

Вы также можете попробовать букмарклет Криса Бэйли, который ломает блокировщики вставок, реализованные через JavaScript.

Это немного хлопотно, но другой альтернативой является временное отключение JavaScript для этой страницы, что, в свою очередь, отключит блокировщик вставки JavaScript. Для Chrome сочетание клавиш для открытия Dev Tools - F12, для доступа к панели настроек - F1, и здесь вы найдете флажок Отключить JavaScript в разделе Общие.

5

Для страниц, которые используют jquery (в основном все веб-страницы). Вы можете вставить следующий URL-адрес JavaScript в адресную строку

javascript:void($('input').attr('onpaste', ''));
2

1 .--- Это может решить проблему, по крайней мере, для нескольких сайтов:ЖАЛОБА, и пусть эти сайты знают, что они УНИЧТОЖАЮТ, а не повышают безопасность для своих пользователей. Может они просто не продумали это ....

Вот текст, который я только что скопировал из блога Криса Бэйли, в котором есть его букмарклет.(Подсказка: сохраните это в ваших закладках).
-> Я бы посоветовал вам отправить ЧАСТЬ следующего на любой сайт, который необходимо перевоспитать:

Повторное включение вставки пароля на надоедливых веб-формах (v2)

Безопасность не стоит воспринимать легкомысленно, поэтому в последние дни меня все больше раздражает то, что некоторые компании отключают возможность вставлять пароли в формы входа в систему. Вместо того, чтобы повысить безопасность, это наносит вред тем из нас, кто использует менеджеры паролей, такие как KeePass, [LastPass] или 1Password, поскольку красивые длинные случайно сгенерированные пароли нельзя просто вставить в поле пароля. Вместо этого пользователи вынуждены вводить пароли вручную, что будет способствовать использованию более коротких паролей (и тем самым ослабит безопасность).

Я обнаружил, что это происходит в таких компаниях, как Apple, Vodafone и Nestlé.

К счастью, я нашел решение в виде букмарклета. Первоначальная идея пришла из публикации в блоге «Включение вставки паролей в раздражающих веб-формах» Дерека Приора. К сожалению, его метод просто удаляет атрибут onpaste напрямую, но это не работает, если веб-сайт использует среду обработки событий, такую как jQuery. Я взял оригинальный код Дерека и изменил его, чтобы лучше работать с этими фреймворками.

2 .--> Попробуйте букмарклет Криса, доступный здесь, но только в Chrome, Opera или Vivaldi, когда страница НЕ использует JQuery:

3 .--> Попросите кого-нибудь написать всеобъемлющий плагин для всех браузеров. Чтобы начать, вот его комментарии и ссылка на источник со страницы Криса:

Чтобы использовать букмарклет, перетащите следующую ссылку на панель закладок браузера.

Примечание о совместимости: букмарклет работает только в Chrome и Safari из-за сложности чтения данных из буфера обмена в Firefox. Это может быть легко расширено, чтобы включить IE, хотя у меня нет доступа к системе Windows, чтобы проверить это. Существуют и другие решения этой проблемы в виде расширений Chrome (например, Вставить пароль ITC и Разрешить вставку в текст полей, хотя я их не проверял), и я хотел бы предположить, что аналогичные дополнения доступны для других браузеров. Лично мне нравится простота букмарклета. Код размещен на pastebin, если вы хотите поиграть с ним:
(ED: И его источник также указан ниже этой выдержки, на его связанной странице.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .