Html5-boilerplate: jQuery ๋กœ์ปฌ ํด๋ฐฑ : Chrome์€ ๋” ์ด์ƒ ๋Š๋ฆฐ ์—ฐ๊ฒฐ์—์„œ document.write๋ฅผ ํ†ตํ•ด ์Šคํฌ๋ฆฝํŠธ๋ฅผ๋กœ๋“œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2016๋…„ 09์›” 08์ผ  ยท  9์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: h5bp/html5-boilerplate

@jpdevries ๋ฅผ ํ†ตํ•ด 1039 ์— ๋Œ€ํ•œ ์˜๊ฒฌ

document.write () ํด๋ฐฑ (๋‚ด๊ฐ€ ๊ทœ์น™์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋Š”)์— ๋Œ€ํ•ด ๋งํ•˜๋ฉด ์ด๊ฒƒ์€ ์–ด๋–ป์Šต๋‹ˆ๊นŒ?

Chrome์€ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์ด ๋Š๋ฆด ๋•Œ document.write ()๋ฅผ ํ†ตํ•ด ์‚ฝ์ž… ๋œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋” ์ด์ƒ๋กœ๋“œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
https://developers.google.com/web/updates/2016/08/removing-document-write

์ด์— ๋Œ€ํ•œ ๋Œ€์‘ ๋ฐฉ๋ฒ•์€ ์•„์ง ๋…ผ์˜๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๊นŒ?

์•„์ง์€ ์•„๋‹ˆ์ง€๋งŒ์ด ๋ฌธ์ œ๋ฅผ ์•Œ๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋งํฌ ๋œ ๋ฌธ์„œ์˜ ํฅ๋ฏธ๋กœ์šด ๋ถ€๋ถ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด ๋ฐ์ดํ„ฐ๋ฅผ ์—ผ๋‘์—๋‘๊ณ  Chrome ํŒ€์€ ์ตœ๊ทผ Chrome์—์„œ document.write ()๊ฐ€ ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐฉ์‹์„ ๋ณ€๊ฒฝํ•˜์—ฌ ์•Œ๋ ค์ง„ ์ž˜๋ชป๋œ ํŒจํ„ด์„ ๊ฐ์ง€ํ•˜๋ฉด ๋ชจ๋“  ์‚ฌ์šฉ์ž๋ฅผ ๋Œ€์‹ ํ•˜์—ฌ ๊ฐœ์ž…ํ•˜๊ฒ ๋‹ค๊ณ  ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค (Chrome ์ƒํƒœ ์ฐธ์กฐ). ํŠนํžˆ Chrome์€

help wanted javascript

๋ชจ๋“  9 ๋Œ“๊ธ€

@roblarsen ๋ฌธ์ œ๋ฅผ ์—ด์–ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ํฌํ•จ ๋œ ๋ชจ๋“  ์Šคํฌ๋ฆฝํŠธ์— defer ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

'async'๋˜๋Š” 'defer'์†์„ฑ์ด์žˆ๋Š” ์Šคํฌ๋ฆฝํŠธ๋Š” ๊ณ„์† ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

๊ฐ™์€ ๊ฒƒ

<script defer src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script defer>window.jQuery || document.write('<script defer src="js/vendor/jquery-1.12.4.min.js"><\/script>')</script>
<script defer src="js/plugins.js"></script>
<script defer src="js/main.js"></script>

๊ทธ๋งŒํผ

<script defer>window.jQuery || document.write('<script defer src="js/vendor/jquery-1.12.4.min.js"><\/script>')</script>

์ผ์ข…์˜ defer ์‹œ์ž‘๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ž‘๋™ํ•˜๋Š” ๊ฒƒ ๊ฐ™์ง€๋งŒ ์˜ฌ๋ฐ”๋ฅธ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ  ... ๋˜๋Š” jquery ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋น„๋™๊ธฐ ์ผ ์ˆ˜ ์žˆ๊ณ  ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐ ๊ธฐ๋ณธ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ง€์—ฐ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  jQuery ํ›„์—๋กœ๋“œ๋˜๋Š”์ง€ ํ™•์ธํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

@jpdevries Google Analytics๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ์ตœ์‹  DOM ์ธํ„ฐํŽ˜์ด์Šค (parentNode.insertBefore)๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก include ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š”

๊ฒฐ์ •์„ ๋‚ด๋ฆฌ๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜์žˆ๋Š” ๊ด€๋ จ ํ† ๋ก  :

@FagnerMartinsBrack ๋งํฌ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. reddit์— ๋Œ€ํ•œ ๊ท€ํ•˜์˜ ์Šค๋ ˆ๋“œ๊ฐ€ ์ƒํ™ฉ์„ ๋ช…ํ™•ํžˆํ•˜๋Š” ๋ฐ ๋„์›€์ด๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ต์ฐจ ์ถœ์ฒ˜ ์กฐ๊ฑด์ด์žˆ๋Š” ํ•œ ๊ฑฑ์ •ํ•  ๊ฒƒ์ด ์—†์Šต๋‹ˆ๋‹ค.

์ œ ์ƒ๊ฐ์—๋Š” ์—ฐ๊ธฐ ์ „๋žต์ด ์ตœ์„ ์˜ ์„ ํƒ์ž…๋‹ˆ๋‹ค. jQuery์™€ ๊ฐ™์ด ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ์ค€๋น„๋˜์–ด์•ผํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ์˜ ๊ฒฝ์šฐ ๋น„๋™๊ธฐ๋ฅผ ์ „ํ˜€ ์ข‹์•„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. WICG / ๊ฐœ์ž… ์Šค๋ ˆ๋“œ์—์„œ ์žฅ๊ธฐ ๊ตฌํ˜„์„ ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค ...

@jpdevries '์ง€์—ฐ'์ฝ”๋“œ์—๋Š” ๋‘ ๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ์ธ๋ผ์ธ <script> ์ง€์—ฐ์€ WHATWG์—์„œ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ฃผ์–ด์ง„ ๋ถˆ์ถฉ๋ถ„ ํ•œ ์ด์œ ๋Š” ์•„๋ฌด๋„ ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค ... ์ง„์ •ํ•œ ์ ˆ๋ฆ„๋ฐœ์ด ์ด์•ผ๊ธฐ์ง€๋งŒ ์Šฌํ”„๊ฒŒ๋„ ์ผ์–ด๋‚ฌ์Šต๋‹ˆ๋‹ค .... ๊ทธ๋ž˜์„œ defer ์‹œ์ž‘์€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. :(
  2. '์ง€์—ฐ'์‹คํ–‰ ์ˆœ์„œ๋Š” IE 8-9์—์„œ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  IE 9-10์—์„œ '๋Œ€ํ™” ํ˜•'์ด๋ฒคํŠธ๊ฐ€ ๋„ˆ๋ฌด ์ผ์ฐ ๋ฐœ์ƒํ•˜์—ฌ '์ง€์—ฐ'์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜์žˆ๋Š” ๋ฌธ์ œ๊ฐ€์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜์ค‘์—๋Š” ์šฐํšŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ '๋Œ€ํ™” ํ˜•'์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํŠธ๋ฆฌ๊ฑฐํ•˜๊ธฐ์œ„ํ•œ ํ•ดํ‚น๊ณผ ํ•˜๋‹จ ์ธ๋ผ์ธ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ defer ์‚ฌ์šฉํ•˜๋Š” ๊ณต์šฉ ์ƒ์šฉ๊ตฌ์˜ ์กฐ๊ฑด์€ ์ฃผ๋กœ IE10 ์‚ฌ์šฉ์ด ์ฃฝ๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@hexalys ๐Ÿ˜ญ ์ €๋Š” ๋กœ์ปฌ ํด ๋ฐฑ์ด์žˆ๋Š” h5bp ์Šคํƒ€์ผ CDN๊ณผ ๊ฐ™์€ ๊ฒƒ์— ๋Œ€ํ•ด ์ง€์—ฐ ์‹œ์ž‘์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ polyfill๊ณผ ๊ฐ™์€ ๊ฒƒ์„ ํฌํ•จํ•˜๊ธฐ ์ „์— ๊ธฐ๋Šฅ ๊ฐ์ง€๋ฅผ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์•ˆํƒ€๊นŒ์šด ์ผ์ž…๋‹ˆ๋‹ค!

ํ์‡„! ์šฐ๋ฆฌ๋Š” ์•ˆ์ „ํ•ฉ๋‹ˆ๋‹ค!

@roblarsen ์˜ค ๋Œ€๋‹จํ•ด! Chrome์ด ๊ฒฐ์ •์„ ๋˜๋Œ ๋ ธ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ์ •๋ง๋กœ โค๏ธ์ด ํŒจํ„ด ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๊ฐ€ ์™œ ์•ˆ์ „ํ•œ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

@jpdevries ์š”์ฒญ์ด ๊ต์ฐจ ์ถœ์ฒ˜ ์ผ ๋•Œ๋งŒ ํŠธ๋ฆฌ๊ฑฐ๋˜๋ฏ€๋กœ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ ๋กœ์ปฌ ํด๋ฐฑ์ž…๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰