Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- audio 객체
- Safari
- safari 버그
- 해시
- 부동소수점
- ffmpeg
- 다국어
- 프로그래머스
- 변수명
- react-i18n
- JS
- 개발자회고
- javascript #encodeuri #encodeuricomponent
- VBR
- CBR
- railway #mysql #db배포
- 스택
- 크로스브라우징
- 코드리뷰
- 알고리즘
- currenttime
- 회고
- next-i18n
Archives
- Today
- Total
Leo의 기술 블로그
클립보드 제어가 사파리에서 안되는 이유? 본문
문제 상황
브라우저에서 복사를 하게 되면 클립보드라는 저장소에 임시로 데이터가 저장된다.
클립보드 메서드중 copy 메서드를 이용해 데이터를 저장하는데 사파리에서 클립보드에 복사되지 않는 이슈가 있었다.
button.onclick = () => {
setTimeout(() => {
copyToClipboard();
}, 100);
};
위와 같이 사용자의 상호작용에 대한 클립보드의 상호작용내에 비동기 호출후 클립보드를 복사하는 동작은 제대로 동작하지 않는다.
사파리내에 보안정책 때문에 사용자의 이벤트로 바로 클립보드를 호출하는게 아니면 동작하지 않게 막고있다.
해결책
button.onclick = () => {
copyToClipboard();
};
해결책은 생각보다 간단하다 사용자 이벤트에 바로 클립보드 제어를 해주면 된다.
'Frontend(Web, App) > 개발 일지' 카테고리의 다른 글
다국어 서비스 적용 회고 (1) | 2024.01.16 |
---|---|
크로스 브라우징 이슈는 어떻게 대응할 수 있을까? (1) | 2024.01.11 |