[JavaScript]window.webkit.messageHandler

GXXN_YXยท2023๋…„ 5์›” 18์ผ
0
post-thumbnail

๐Ÿ“Œ messageHandler๋ž€?

javascript์—์„œ native๋กœ ๋ฉ”์„ธ์ง€๋ฅผ ๋ณด๋‚ด๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ, javascript์ชฝ์—์„œ ์ •์˜ํ•œ ๋ฉ”์†Œ๋“œ์ด๋‹ค.

(++ ๋„ค์ดํ‹ฐ๋ธŒ์—์„œ ์‘๋‹ตํ•  ๋•Œ์—๋Š” ์ง์ ‘ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•œ๋‹ค.)

๐Ÿงพ ์ž‘์„ฑ๋ฐฉ๋ฒ•

window.webkit.messageHandlers.{๋ฉ”์‹œ์ง€ ํ•ธ๋“ค๋Ÿฌ ์ด๋ฆ„}.postMessage("์ „๋‹ฌํ•  ๋ฉ”์‹œ์ง€ ์ž…๋ ฅ")

//์˜ˆ์‹œ
<button onclick="sendScriptMessage()">native๋กœ ๋ณด๋‚ด๊ธฐ!</button>

<script>
function sendScriptMessage() {
   window.webkit.messageHandlers.HandlerName.postMessage('์—ฌ๊ธฐ์— ์ฒ˜๋ฆฌํ•  ๋ฉ”์‹œ์ง€ ์ž…๋ ฅ')
}
</script>



๐Ÿ“Œ window.webkit

๋ธŒ๋ผ์šฐ์ €์—์„œ ์ œ๊ณต๋˜๋Š” WebKit ์—”์ง„๊ณผ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ๊ณผ ์†์„ฑ์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ์ „์—ญ ๊ฐ์ฒด์ด๋‹ค.

WebKit์€ ๋งŽ์€ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ Œ๋”๋ง ์—”์ง„ ์ค‘ ํ•˜๋‚˜๋กœ, HTML, CSS, JavaScript ๋“ฑ์˜ ์›น ๊ธฐ์ˆ ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ํ™”๋ฉด์— ํ‘œ์‹œํ•˜๋Š” ์—ญํ• ์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

์ฃผ๋กœ Safari ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‚ฌ์šฉ๋˜๋ฉฐ, ์ผ๋ถ€ ๋‹ค๋ฅธ ๋ธŒ๋ผ์šฐ์ €์—๋„ WebKit ๊ธฐ๋ฐ˜์˜ ๋ณ€ํ˜• ์—”์ง„์ด ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€

Powered by GraphCDN, the GraphQL CDN