2020/02/13 DevSumi çºè¡¨è³æ
2020/02/13 DevSumi çºè¡¨è³æ
off-the-main-thread ã¯ä»ããã³ãã¨ã³ãã§ç±ããã¼ãã®ä¸ã¤ã§ããæ¥æ¬èªåã§ã¯ä»ã²ã¨ã¤è©±é¡ã«ãªã£ã¦ãªãã®ã§ç´¹ä»ãã¦ããã¾ãã off-the-main-thread ã®æ¦å¿µã®å¤§ã¾ããªæ¦è¦ã«ã¤ãã¦ã¯ãChrome éçºè ã® nhiroki ããã®æ¥æ¬èªã®è¨äºãããã®ã§ããã¡ããåç §ãã¦ãã ããã nhiroki.jp speakerdeck.com ããã¾ã§ã®ãããã 徿¥ã®ã¦ã§ããã©ã¦ã¶ã¼ã§ã¯ãä¸ã¤ã®ç»é¢ã«ã¤ãä¸ã¤å²ãå½ã¦ããããUI ã¹ã¬ããã¨å¼ã°ããåå空éã§æ§ã ãªå¦çãè¡ã£ã¦ãã¾ãããDOMã»ãã³ãã£ã¯ã¹ã®è©ä¾¡, CSS ã«ãã rendering / paintingãJSã®Scriptingâ¦ããã¡ããè£å´ã§ã¯ãã©ã¦ã¶ãæ§ã ãªããã¯ã°ã©ã¦ã³ããµã¼ãã¹ã«å¦çãå§è²ããã¹ã¬ããã§å®è¡ããããã®éåæãªçµæãåãåã£ã¦ããããã§ãããå°ãªãã¨ãUIã¹ã¬ããã§èµ°ãJSãã
Intro Extensible Web Manifest 以éãæ¨æºå使¥ã¯ Low Level API ã«ãã©ã¼ã«ã¹ããä¸å®ã®ææãåºã¦ããã ããã§ããããããã¼ã¹ã¨ããããã¢ããªã¬ã¤ã¤ã®éè¦ãæºããããã® High Level API ãã©ãæ¨æºåããããã¨ããç¹ã«ã¤ãã¦æéãææ¡ãããã åºæ¬ã¯ãLow Level API ãå ã« Polyfill ãä½ããããããã®ãã£ã¼ãããã¯ã«ããçå®ãé²ããã¨ããæ¹éã ã åãã㦠ES Modules ã® Import ãç¨ãã¦ãpolyfill ã¨ãã¤ãã£ãå®è£ ãã¹ã ã¼ãºã«åãæ¿ããæ¡å¼µãææ¡ããã¦ããã æ¬è¨äºã§ã¯ Layered APIs (LAPIs) ã¨å¼ã°ããããã®ä¸é£ã®æ çµã¿ã«ã¤ãã¦è§£èª¬ããã ã¾ããåçã®è©±ã æ±äº¬ Node å¦å #tng30 ã§è¡ã£ãè³æã¯ä»¥ä¸ã§ããã Web over Layered APIs St
What is Polyfill.io? It's a service which accepts a request for a set of browser features and returns only the polyfills that are needed by the requesting browser. Why do I need it? There are lots of differing browsers and browser versions in use throughout the world, each one has a slightly different set of features to the rest. This can make developing for browsers a difficult task. The latest v
How available are the web platform's features? This lil' webapp indicates the percentage of users who have a browser that natively supports various web platform features. It's powered by data from caniuse.com, updated April 19, 2021, and StatCounter (which, admittedly, has its problems). The list is sorted by Feature Activity Recency (FAR): a metric I made up, capturing how recently the overall br
çæ§ã¯ããã¾ãã¦ãã¡ããã¢ã¨ã³ã¸ãã¢ã®ä¸æã§ãã 好ããªãã©ã¦ã¶ã¯ Vivaldi ã§ãã æ¬è¨äºã§ã¯Webéçºå¹çåã®çºã®ã²ã¨ã¤ã®ææ®µã¨ãã¦ãBrowsersyncã®å©ç¨æ¹æ³ã¨å¹¾ã¤ãã®æ©è½ããç´¹ä»ãã¾ãã Browsersyncã¨ã¯ Browsersyncã¯ãã¡ã¤ã«å¤æ´ãç£è¦ããèªåã§ãã©ã¦ã¶ãªãã¼ããè¡ã£ã¦ããããã¼ã«ã§ãã Browsersync - Time-saving synchronised browser testing å種ã®ãã¼ã«ã¨ãã¦LiveReloadãæåã§ããã ãã©ã¦ã¶å´ã§Extentionãæ¡å¼µãä¸è¦ è¤æ°ãã©ã¦ã¶ã§æä½ã®åæãã§ãã ãã®ä»ã®æ©è½ãè±å¯ ãªã©ã®ã¡ãªãããããæè¿ã¯Browsersyncã®æ¹ã人æ°ã®ããã§ãã ãã£ããBrowsersyncã試ãã¦ã¿ãã ã¾ãã¯Browsersyncãã¤ã³ã¹ãã¼ã«ãã¦ã¿ã¾ãããã nodeã®ããã±ã¼ã¸ããã¼ã¸
Intro DOM ã®ã¤ãã³ããªã¹ãã®ä»æ§ã« Passive Event Listeners ã¨ãããªãã·ã§ã³ã追å ãããã ãã®ãªãã·ã§ã³ã¯ã主ã«ã¢ãã¤ã«ãªã©ã§ã®ã¹ã¯ãã¼ã«ã®è©°ã¾ã(Scroll Junk) ã解決ããããã«å°å ¥ããããã®ã§ããã ä»åã¯ããã®ä»æ§ã解決ããåé¡ã¨ãæ¬ãµã¤ãã¸ã®é©ç¨ã解説ããã Passive Event Listeners Spec Scroll Event ã® PreventDefault() ç»é¢ã®ã¹ã¯ãã¼ã«ã«åãããã¤ã³ã¿ã©ã¯ã·ã§ã³ãå®è£ ããå ´åãScroll Event ã«ã¤ãã³ããªã¹ããç»é²ããã å ¸åçãªä¾ã§ã¯ touchstart ã touchend ãããã¯ãããã®ä¸ã§ DOM ã®æä½ãªã©ã宿½ãããªã©ãããã å ´åã«ãã£ã¦ã¯ã¤ãã³ããªã¹ãå ã§ preventDefault() ãå¼ã¶ãã¨ã§ãã¹ã¯ãã¼ã«ãã®ãã®ãæ¢ãããã¨ãã§ããã å®
2015å¹´ãçµããã§ããã ãã¦ããµã¨æãç«ã£ã¦ã³ã¬ã調ã¹ã¦ã¾ãã å»å¹´ãããããªï¼å½åã使ããããã§ã¾ã£ãã使ããªãã¤ã¡ã¼ã¸ããã£ããã®APIã§ããã ã¯ããã¦å¹´æ«ã«ãªã£ãä»ã使ããAPIã«ãªã£ã¦ããã®ã§ããããã»ã»ã»ï¼ Web Speech API - Web APIs | MDN ã¯ããã« Web Speech APIã£ã¦ã®ã¯å®ã¯2æ¬æ±ã§æ§æããã¾ãã Speech recogition Speech synthesis Speech recogitionã¯ããã¤ã¯ã§å£°ãæ¾ã£ã¦ãããæååã§æ±ããããã«ããã¨ãã¾ã§ã Speech synthesisã¯æååãå®éã«çºããã¨ããã ä»å調ã¹ãã®ã¯å¾è ã®é¨åã§ãã Speech synthesis ãã£ããä½¿ãæ¹ã var txt = 'ãã®ã¤ã¼ããã¼ã´ã©ã®ããã¨ãã£ã風'; var uttr = new SpeechSynthesis
ä»åãã¡ãã£ã¨ããç¸ã«ããBonanzaããã©ã¦ã¶ã§åããã¦ã¿ã¾ãããBonanza 6.0ã®ã½ã¼ã¹ã³ã¼ããã»ã¼ãã®ã¾ã¾å©ç¨ãã¦ãEmscriptenã§JavaScriptã«å¤æãã¦ãã¾ãã æè¡çãªãã¨ã«èå³ã¯ãªããããã«éãã§ã¿ããï¼ã¨ããæ¹ã¯ãã¡ãããã©ãããååã«45Mã»ã©ãã¦ã³ãã¼ããçºçãã¾ãï¼ã注æãã ããã http://tkihira.github.io/embona/index.html ä¸ã®URLã«è¡ãã¨CPU vs CPUã®æ¦ããå§ã¾ãã¾ããèªåã§æ¦ãããæ¹ã¯æ°è¦å¯¾å±ã§è¨å®ãã¦ãã ãã UIå¨ãã¯ç¸å½æãæãã¦å®è£ ããããã«å¤æ°ãã°ããããã¨æãã¾ããã容赦ãã ãã ãã©ã¦ã¶ãåºã¾ã£ãããã¾ããããCPUæèä¸ã«æãå ¥åãããæ°è¦å¯¾å±ããã®ã«ã¯å¤§å¤åå¿ãéãï¼ã¨ãããæèãçµããã¾ã§åå¿ããªãï¼ã®ã«ã注æãã ãã ãã¼ã¿ãã¦ã³ãã¼ãã§43Mbyteãããã«å é¨ã§å±é
2-1. ãªãµã¤ãºå¦ç  Figure 2. Mobile Safariã«ããç»åã¢ãããã¼ãç»é¢ æçµææã®ç»åãã¼ã¿ãããµã¼ãã¼ãµã¤ãAPIã«POSTãããã¨ãã´ã¼ã«ã§ãããAndroidã«ããã¦ãXMLHttpRequestã§Blobããªã¯ã¨ã¹ãã«è¨å®ãã¦ã空ã®ããã£ã§éä¿¡ãããåé¡ãã¿ããããããä»åã¯Base64 encoded DataURIã¨ãã¦POSTãããã¨ã«ãã¦ããã 2-1-1. åºæ¬å®è£ Æ ä»åã®ãªãµã¤ãºå¦çã§ã¯ãCanvasè¦ç´ ã¨File APIãå©ç¨ãããåºæ¬æ¹éã¨ãã¦ã¯ãinputtype='file'ã®changeã¤ãã³ããããFileãªãã¸ã§ã¯ããåå¾ãããããä¸åº¦Canvasã«æ¸ãåºããã¨ã§ãªãµã¤ãºã試ã¿ããæçµçã«ã¯ãcanvas.toDataURL() ã«ãã£ã¦DataURIãåå¾ããã ä¸è¨ã«ãåºæ¬å®è£ ã®ãµã³ãã«ã示ãã( http://co
第4åãã©ã¦ã¶ã¼åå¼·ä¼ ç¬¬ï¼åããã©ã¦ã¶ã¼åå¼·ä¼ã on Zusaar ã«åå ãã¦ããã®ã§ããã®æã®ã¡ã¢ã§ãã ååã®é¨ : ã³ãã¥ãã㣠ã»ãã·ã§ã³ ãªãã©ã¤ã³ãã£ãã·ã¥ã«ã¤ã㦠â hebikuzure IE ã®ãã£ãã·ã¥ã®ãªãã©ã¤ã³èª¿æ»ã«ã¤ãã¦(æ¹è¨ç) IE ã®ãã£ãã·ã¥ã®ãªãã©ã¤ã³èª¿æ»ã«ã¤ãã¦ ã®æ¹è¨ç Content.IE5 IEã®ãã£ã·ã¥ãã¼ã¿æ§é ã¯IE5ããå¤ãã£ã¦ãªãã£ã Window2000 ã®é ã¨åã IE10ã®ãã£ã·ã¥ã®ã·ã¹ãã 夿´ IE10ã§ã¯ãã£ãã·ã¥ã®ã·ã¹ãã ã夿´ããã¦ã Content.IE5ã®ä¸èº« index.dat ã¤ã³ããã¯ã¹ãã¡ã¤ã« è±æ°8æåã®ãã£ãã·ã¥ãã©ã«ã å®éã®ãã¡ã¤ã«ã並ãã§ã 4åã¤ã¥ãã£ãã·ã¥ãã©ã«ããä½ã£ã¦ãã£ãã·ã¥ãæ¸ãè¾¼ã ãã£ãã·ã¥ã®æ å ±ã¯ã©ã? æçµæ´æ°æ¥æã¨ãã®ã¡ã¿ãã¼ã¿ã¯ã©ã? index.datã«å«ã¾ãã¦ãã ãã¤ã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}