1. Сайт должен работать через HTTPS
2. Чтение буфера обмена просиходит исключительно с разрешения
3. Спросить разрешения на работу с буфером обмена можно такой конструкцией
navigator.permissions.query({
name: ‘clipboard-read’
}).then(permissionStatus => {
// Will be ‘granted’, ‘denied’ or ‘prompt’:
console.log(permissionStatus.state);
// Listen for changes to the permission state
permissionStatus.onchange = () => {
console.log(permissionStatus.state);
};
});
4. Чтение буфера может происходить 2-мя методами, старым и новым )) Удивительно ! Старье нас не интересует. А прочитать буфер мы можем командой
navigator.clipboard.readText().then(clipText => document.getElementById(‘url’).value = clipText);
Еще думал будет ограничение на невозможность чтения буфера без событий клика, но нет, можно читать и после инициализации DOM. Ура !