<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>浏览器 | 锤子前端</title><description>Now vibe coding, so learning hammer FE ?</description><link>https://channel.meo-ai.com</link><item><title>《浏览器主线程很昂贵：高性能前端优化实战指南》</title><link>https://channel.meo-ai.com/posts/706</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/706</guid><pubDate>Thu, 10 Sep 2026 23:29:33 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《浏览器主线程很昂贵：高性能前端优化实战指南》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;br /&gt;&lt;a href=&quot;/search/result?q=%23%E5%89%8D%E7%AB%AF&quot; title=&quot;#前端&quot;&gt;#前端&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Web%E6%80%A7%E8%83%BD&quot; title=&quot;#Web性能&quot;&gt;#Web性能&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8%E5%8E%9F%E7%90%86&quot; title=&quot;#浏览器原理&quot;&gt;#浏览器原理&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23JavaScript&quot; title=&quot;#JavaScript&quot;&gt;#JavaScript&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B8%B2%E6%9F%93%E7%AE%A1%E7%BA%BF&quot; title=&quot;#渲染管线&quot;&gt;#渲染管线&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23WebWorker&quot; title=&quot;#WebWorker&quot;&gt;#WebWorker&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%8A%A8%E7%94%BB%E4%BC%98%E5%8C%96&quot; title=&quot;#动画优化&quot;&gt;#动画优化&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BA%A4%E4%BA%92%E4%BC%98%E5%8C%96&quot; title=&quot;#交互优化&quot;&gt;#交互优化&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%80%A7%E8%83%BD%E8%B0%83%E4%BC%98&quot; title=&quot;#性能调优&quot;&gt;#性能调优&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：&lt;br /&gt;&lt;br /&gt;本文深入剖析了浏览器主线程作为稀缺资源的工作原理，指出前端性能问题的根源往往不是代码速度慢，而是主线程被长时间占用导致界面冻结。文章系统性地介绍了两大类优化策略：在主线程上&quot;精打细算&quot;（拆分、批处理、优先级排序、延迟执行），以及&quot;完全不用主线程&quot;（利用合成器线程、Web Worker、消除不必要的工作），并通过大量交互式 Demo 帮助读者直观理解每种技术的实际效果。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;&lt;br /&gt;1. &lt;b&gt;主线程是性能瓶颈的核心&lt;/b&gt;：主线程同时负责运行 JavaScript、样式计算、布局、绘制和事件处理，所有工作排队串行执行。60Hz 屏幕每帧预算约 16.6ms，实际可用仅约 10ms，超过 50ms 的任务会导致界面卡顿。&lt;br /&gt;&lt;br /&gt;2. &lt;b&gt;拆分（Splitting）&lt;/b&gt;：将大任务切割成小片段，通过 &lt;code&gt;setTimeout&lt;/code&gt; 或 &lt;code&gt;requestAnimationFrame&lt;/code&gt; 让出主线程，让浏览器在间隙处理渲染和输入。注意过度拆分会产生额外开销，且 &lt;code&gt;JSON.parse&lt;/code&gt; 等原子操作无法拆分。&lt;br /&gt;&lt;br /&gt;3. &lt;b&gt;批处理（Batching）&lt;/b&gt;：将频繁触发的事件（如滚动、输入）合并执行，使用防抖（debounce）和节流（throttle）减少重复劳动。React 的虚拟 DOM 本质上也是一种批处理机制。&lt;br /&gt;&lt;br /&gt;4. &lt;b&gt;优先级排序（Prioritizing）&lt;/b&gt;：通过自定义队列（基于 &lt;code&gt;MessageChannel&lt;/code&gt;）实现任务插队机制，确保用户当前关注的操作（如点击预览图片）优先执行，采用&quot;空闲时预处理，紧急时优先处理&quot;的策略。&lt;br /&gt;&lt;br /&gt;5. &lt;b&gt;延迟执行（Deferring）&lt;/b&gt;：非必要工作延后处理，包括代码分割、使用 &lt;code&gt;IntersectionObserver&lt;/code&gt; 实现虚拟列表（只渲染可视区域内容）、离屏时暂停动画等，避免一次性处理全部数据。&lt;br /&gt;&lt;br /&gt;6. &lt;b&gt;利用合成器线程&lt;/b&gt;：使用 &lt;code&gt;transform&lt;/code&gt; 和 &lt;code&gt;opacity&lt;/code&gt; 代替 &lt;code&gt;top&lt;/code&gt;、&lt;code&gt;left&lt;/code&gt;、&lt;code&gt;width&lt;/code&gt; 等触发布局的属性做动画，让动画在合成器线程运行，即使主线程繁忙也能保持流畅。&lt;br /&gt;&lt;br /&gt;7. &lt;b&gt;FLIP 动画技术&lt;/b&gt;：对于必须改变布局的动画（如列表重排），先测量初始和最终位置，通过反转和播放 &lt;code&gt;transform&lt;/code&gt; 来实现平滑过渡，将布局计算限制为仅一次，动画过程交给合成器。&lt;br /&gt;&lt;br /&gt;8. &lt;b&gt;Web Worker 处理重计算&lt;/b&gt;：将图片处理、大数据解析等纯计算任务转移到 Worker 线程，通过 &lt;code&gt;postMessage&lt;/code&gt; 的 Transferable 对象（如 &lt;code&gt;ArrayBuffer&lt;/code&gt;）实现零拷贝数据传输，避免主线程冻结。&lt;br /&gt;&lt;br /&gt;9. &lt;b&gt;消除不必要的工作&lt;/b&gt;：当数据流入速度超过处理能力时，采用丢弃（旧日志）、合并（只保留最新值）、跳过（缓存 memoization）三种策略，从源头减少工作量。&lt;br /&gt;&lt;br /&gt;10. &lt;b&gt;避免布局抖动（Layout Thrashing）&lt;/b&gt;：不要交替读写布局属性（如 &lt;code&gt;offsetWidth&lt;/code&gt;），应先批量读取再批量写入，强制浏览器反复计算布局会严重阻塞主线程。&lt;br /&gt;&lt;br /&gt;URL：&lt;br /&gt;&lt;a href=&quot;https://kciter.so/posts/the-expensive-main-thread/en/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://kciter.so/posts/the-expensive-main-thread/en/&quot;&gt;https://kciter.so/posts/the-expensive-main-thread/en/&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://kciter.so/posts/the-expensive-main-thread/en&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;What comes to mind when you hear &amp;quot;frontend optimization&amp;quot;? For most of us it&apos;s things like reducing network requests, shrinking the bundle,…&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;kciter.so&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;The Browser&apos;s Main Thread Is Expensive | kciter.so&quot; src=&quot;/static/https://cdn4.telesco.pe/file/M7yU5vwQA68lMlS1cfdCD6jbRYwY9CREzH7USkG-XnIJ-92aRhup9RXNnO-g64Vxfap3MjPkx0cCo96NP-RjpcI4H_rJwlcDlA62JBGitYmRKNXswN5xB4H1dzZdCGIfT0fIBu6d73jdr1NkSwaqfMPt5I0Z9eoElaT8S5nD0XHwSDcuryH0fAIblnFZ66jz_7tyCgmbw6VRF3GGck-RnU6dkTlCk1pUUVszRfFsL5eDWC_yqgUk3CO4OnE3hvOs2QOUFVDFoBUS1AFVf8mIT7eUh_DxBPiyesG1EIm1evmcWVms-2Fe3vtSm7qBfY004nIb5_5hD1C9jR0NfF-HHQ.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;The Browser&apos;s Main Thread Is Expensive | kciter.so&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;What comes to mind when you hear &quot;frontend optimization&quot;? For most of us it&apos;s things like reducing network requests, shrinking the bundle,…&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《MDN 推出官方 MCP 服务器，让 AI 助手实时获取权威 Web 文档》</title><link>https://channel.meo-ai.com/posts/668</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/668</guid><pubDate>Sun, 21 Jun 2026 23:49:37 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《MDN 推出官方 MCP 服务器，让 AI 助手实时获取权威 Web 文档》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;a href=&quot;/search/result?q=%23%E5%89%8D%E7%AB%AF&quot; title=&quot;#前端&quot;&gt;#前端&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23AI%E5%B7%A5%E5%85%B7&quot; title=&quot;#AI工具&quot;&gt;#AI工具&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23MCP&quot; title=&quot;#MCP&quot;&gt;#MCP&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23MDN&quot; title=&quot;#MDN&quot;&gt;#MDN&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8%E5%85%BC%E5%AE%B9%E6%80%A7&quot; title=&quot;#浏览器兼容性&quot;&gt;#浏览器兼容性&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23VSCode&quot; title=&quot;#VSCode&quot;&gt;#VSCode&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Claude&quot; title=&quot;#Claude&quot;&gt;#Claude&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：&lt;br /&gt;MDN 官方发布了一款实验性 MCP（Model Context Protocol）服务器，旨在让 LLM 和编程助手直接访问 MDN 的搜索、文档及浏览器兼容性数据（BCD），解决 AI 回答中可能出现的过时或错误信息问题。开发者可通过远程服务或本地部署方式接入，支持 VS Code、Claude Code 等 MCP 兼容客户端，实现编码时一键查询 API 用法和兼容性，无需离开编辑器。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;1. 官方出品，权威数据源：这是 MDN 官方推出的 MCP 服务器，直接对接 MDN 的搜索 API、文档 JSON API 以及浏览器兼容性数据（BCD），确保 AI 获取的是最新、最准确的 Web 平台技术资料，而不是训练数据中的&quot;旧知识&quot;&lt;br /&gt;2. 六大核心工具，覆盖开发全场景：提供 &lt;code&gt;mdn_search&lt;/code&gt;（关键词搜索）、&lt;code&gt;mdn_doc&lt;/code&gt;（获取完整文档）、&lt;code&gt;mdn_compat&lt;/code&gt;（浏览器兼容性检查）、&lt;code&gt;mdn_list&lt;/code&gt;（浏览 BCD 特性）、&lt;code&gt;mdn_css&lt;/code&gt;（CSS 属性定义）、&lt;code&gt;mdn_http&lt;/code&gt;（HTTP 参考）等工具，从查文档到看兼容性一站搞定&lt;br /&gt;3. 远程 + 本地双模式部署：既可以一键接入官方远程服务（&lt;code&gt;https://mcp.mdn.mozilla.net/&lt;/code&gt;），也可以克隆仓库本地运行，满足对数据隐私有顾虑的团队需求；本地模式支持 MCP Inspector 调试，开发体验友好&lt;br /&gt;4. 无缝集成主流开发工具：完美支持 VS Code、Claude Code、Cursor 等 MCP 兼容客户端，配置简单，安装后直接在 AI 聊天中调用工具，真正实现&quot;边写代码边查文档&quot;的流畅体验&lt;br /&gt;5. 实验性质，持续迭代中：目前处于实验阶段，Mozilla 会收集查询数据以优化服务（可 opt-out），且保留随时调整或下线服务的权利，建议开发者关注官方动态&lt;br /&gt;&lt;br /&gt;URL：&lt;br /&gt;&lt;a href=&quot;https://developer.mozilla.org/en-US/blog/introducing-mdn-mcp-server/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://developer.mozilla.org/en-US/blog/introducing-mdn-mcp-server/&quot;&gt;https://developer.mozilla.org/en-US/blog/introducing-mdn-mcp-server/&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://mcp.mdn.mozilla.net/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;The MDN Web Docs site provides information about Open Web technologies including HTML, CSS, and APIs for both Web sites and progressive web apps.&quot;&gt;
  &lt;i class=&quot;link_preview_right_image&quot; style=&quot;background-image:url(&apos;https://cdn4.telesco.pe/file/MWzDnhywnpdY2bGFk6Pchxlv8pL-h5PUzTMPT2tp_uqLWPohVX7Ad-ipYtyVH_NCSOdNtSSKSlXn6GrTd5qTNcoDXBiKR3o0dgCsFTIx7iBfefoJkCpH3tN-hGXgCWHvDNxVM1Ig1qqkvgyoWlYCsqio4ktLx9PBzJmQU9mUzJUmYGMs8PsA87_C0PGREFxp1dD_nI_vDkGBTlPEW8CiqHkYeacH3jCtMBAwbsGPug6icGDFB3-c2HJSihYZJMNuqbK0FWUVBU8kTdXL3xf6XoHhjHK0PQJ-pf2RGCVASgwD2Uhc3O79eg-LPiNXyJ3zd-ZTapXF0UIyc5NqsIAcPQ.jpg&apos;)&quot;&gt;&lt;/i&gt;
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;MDN Web Docs&lt;/div&gt;
  
  &lt;div class=&quot;link_preview_title&quot;&gt;MDN MCP server&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;The MDN Web Docs site provides information about Open Web technologies including HTML, CSS, and APIs for both Web sites and progressive web apps.&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《利用浏览器Canvas进行数据压缩》</title><link>https://channel.meo-ai.com/posts/565</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/565</guid><pubDate>Fri, 27 Feb 2026 02:29:12 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《利用浏览器Canvas进行数据压缩》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;a href=&quot;/search/result?q=%23%E5%89%8D%E7%AB%AF&quot; title=&quot;#前端&quot;&gt;#前端&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23JavaScript&quot; title=&quot;#JavaScript&quot;&gt;#JavaScript&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23CanvasAPI&quot; title=&quot;#CanvasAPI&quot;&gt;#CanvasAPI&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%95%B0%E6%8D%AE%E5%8E%8B%E7%BC%A9&quot; title=&quot;#数据压缩&quot;&gt;#数据压缩&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23PNG%E7%BC%96%E7%A0%81&quot; title=&quot;#PNG编码&quot;&gt;#PNG编码&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8%E5%85%BC%E5%AE%B9%E6%80%A7&quot; title=&quot;#浏览器兼容性&quot;&gt;#浏览器兼容性&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23SPA&quot; title=&quot;#SPA&quot;&gt;#SPA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：本文介绍了一种利用浏览器Canvas API将任意数据压缩为PNG图像格式的技术方案。通过将字节数据编码为像素颜色值并生成PNG图像，可以间接调用浏览器内置的压缩算法，实现无需外部依赖的数据压缩。该方法特别适用于需要在旧版浏览器中压缩数据、或需要将SPA状态序列化到URL中的场景，提供了Compression Streams API不可用时的替代方案。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;- 背景需求：在静态网站和SPA中，有时需要将状态数据序列化到URL hash中，因此需要前端数据压缩方案；虽然2023年5月后Compression Streams API已普及，但旧版浏览器仍需替代方案&lt;br /&gt;- 核心原理：浏览器内置了优化的压缩库用于HTTP请求和图片处理，通过将数据编码为PNG像素数据，可间接利用浏览器的无损压缩能力&lt;br /&gt;- 技术实现：将Uint8Array数据按RGB通道编码到Canvas像素中（首字节存储最后一像素的有效字节数），Alpha通道固定为255以确保跨浏览器一致性，最终通过toDataURL(&quot;image/png&quot;)获取base64编码的压缩数据&lt;br /&gt;- 解压流程：异步加载生成的PNG图片，读取像素数据后过滤Alpha通道，根据首字节指示的有效长度提取原始字节数据&lt;br /&gt;- 方案特点：即使考虑PNG格式开销，压缩后的数据通常仍小于原始数据；完全基于浏览器原生API，无需外部库依赖&lt;br /&gt;- 应用场景：旧浏览器兼容性支持、URL状态序列化、纯前端数据压缩需求&lt;br /&gt;&lt;br /&gt;文章URL：&lt;a href=&quot;https://jstrieb.github.io/posts/canvas-compress/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://jstrieb.github.io/posts/canvas-compress/&quot;&gt;https://jstrieb.github.io/posts/canvas-compress/&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://jstrieb.github.io/posts/canvas-compress&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Old browsers don’t have JavaScript compression APIs, so we store data in pixel color channels and export to PNG to compress data.&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;jstrieb.github.io&lt;/div&gt;
  
  &lt;div class=&quot;link_preview_title&quot;&gt;Using the Browser’s &amp;lt;canvas&amp;gt; for Data Compression&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;Old browsers don’t have JavaScript compression APIs, so we store data in pixel color channels and export to PNG to compress data.&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>#文章 #浏览器 怎么构建扩展</title><link>https://channel.meo-ai.com/posts/231</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/231</guid><pubDate>Fri, 21 Feb 2025 11:28:57 GMT</pubDate><content:encoded>&lt;a href=&quot;/search/result?q=%23%E6%96%87%E7%AB%A0&quot; title=&quot;#文章&quot;&gt;#文章&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8&quot; title=&quot;#浏览器&quot;&gt;#浏览器&lt;/a&gt; 怎么构建扩展&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://chenhuijing.com/blog/learning-web-extensions/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://chenhuijing.com/blog/learning-web-extensions/&quot;&gt;https://chenhuijing.com/blog/learning-web-extensions/&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://chenhuijing.com/blog/learning-web-extensions&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;I blinked and the first month of 2025 went by. NGL, 2024 was…challenging. So forgive me for choosing to just shut down during the end of last year. But I did…&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;Chen Hui Jing&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;Learning web extensions&quot; src=&quot;/static/https://cdn4.telesco.pe/file/icHa5w6fZ9wDT-jXjv2nGeNuA2Y50isWtZAOk0oGFnM7R_Y1IyytqhksoMFmv3U-QsWfhChZWomo2KfCA1PRvfTqEhe-GPPoFbNTwmu1jV9VD0Euewl_T7JOrlQq32lWdAYYWM7bMWMTyrdLIYFthy_06QgXgiZhtnKuyNCisIieKXowOf7nfoRV9RFQ4-SPek8q56HZoFJ3FzwvPo8yP3lvgAhOIZxQ9VNxOE3QA53r10W5AxE5IErchpgP0RqTZtuiqifwgALuegm7D_BvNR57ziLJ4s2kgTYBM5sCfrdTKMIDgoR7GMHZdH66JMKjrAoAAsKLaIZHrAdzDN1qLA.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;Learning web extensions&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;I blinked and the first month of 2025 went by. NGL, 2024 was…challenging. So forgive me for choosing to just shut down during the end of last year. But I did…&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>#浏览器 沉浸式翻译团队的新产品「BiLin」，自动多语言搜索.</title><link>https://channel.meo-ai.com/posts/126</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/126</guid><pubDate>Fri, 13 Dec 2024 00:04:02 GMT</pubDate><content:encoded>&lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8&quot; title=&quot;#浏览器&quot;&gt;#浏览器&lt;/a&gt; 沉浸式翻译团队的新产品「&lt;a href=&quot;https://chromewebstore.google.com/detail/bilin-%E5%85%8D%E8%B4%B9-ai-%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E%E4%BE%A7%E8%BE%B9%E6%A0%8F/dlcolhdleofjnpppniiieeegciclhmma?hl=zh-CN&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;BiLin&quot;&gt;BiLin&lt;/a&gt;」，自动多语言搜索.&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://chromewebstore.google.com/detail/bilin-%E5%85%8D%E8%B4%B9-ai-%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E%E4%BE%A7%E8%BE%B9%E6%A0%8F/dlcolhdleofjnpppniiieeegciclhmma?hl=zh-CN&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Free AI search engine sidebar, bilingual web page translation plugin, bilingual subtitle translation for videos (Youtube, Netflix)&quot;&gt;
  &lt;i class=&quot;link_preview_right_image&quot; style=&quot;background-image:url(&apos;https://cdn4.telesco.pe/file/eEF1uFLh5tkgFMqrnwa3LcBix5HyeeqURbtis_qQV8_ZGXO-BxASpPnz9vMdsdzghGy6Cm_xPOvYL2yDXX6id1bl7I2D7ktTFv0YoU6F3CF4WkYSDHmwC6B5RtY0ttuUpJmfrz1HjhQpN2vIuEA_tfFVEyZ3-Ionh-0yIX5ZOzSzHRKEGWFZdzPjRyPJrBB1pKUMgFiAzbIeQYcQYmtz4Xz0SBgf1m8Xokl2KfU63csXtyM3j_j46A2Mck0dD33_Q5pchHJvne3cnr5QODkOEt6TBOCMbUxoqEKi-gKEBk0kdSOyL_PBBCVoMxhzrEem_wQwtZPkxbUaxBDG9bQlcA.jpg&apos;)&quot;&gt;&lt;/i&gt;
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;Google&lt;/div&gt;
  
  &lt;div class=&quot;link_preview_title&quot;&gt;BiLin - Free AI Search Engine Sidebar - Chrome Web Store&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;Free AI search engine sidebar, bilingual web page translation plugin, bilingual subtitle translation for videos (Youtube, Netflix)&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>#原理 #浏览器 #文章 v8  如何在处理动态添加的属性（slow properties）的同时提供快速的属性（fast properties）访问</title><link>https://channel.meo-ai.com/posts/69</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/69</guid><pubDate>Tue, 19 Nov 2024 03:26:08 GMT</pubDate><content:encoded>&lt;a href=&quot;/search/result?q=%23%E5%8E%9F%E7%90%86&quot; title=&quot;#原理&quot;&gt;#原理&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8&quot; title=&quot;#浏览器&quot;&gt;#浏览器&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%96%87%E7%AB%A0&quot; title=&quot;#文章&quot;&gt;#文章&lt;/a&gt; v8  如何在处理动态添加的属性（slow properties）的同时提供快速的属性（fast properties）访问。&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://v8.dev/blog/fast-properties&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://v8.dev/blog/fast-properties&quot;&gt;https://v8.dev/blog/fast-properties&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://v8.dev/blog/fast-properties&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;This technical deep-dive explains how V8 handles JavaScript properties behind the scenes.&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;v8.dev&lt;/div&gt;
  
  &lt;div class=&quot;link_preview_title&quot;&gt;Fast properties in V8 · V8&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;This technical deep-dive explains how V8 handles JavaScript properties behind the scenes.&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>#浏览器 #文章 浏览器级图片懒加载</title><link>https://channel.meo-ai.com/posts/67</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/67</guid><pubDate>Tue, 19 Nov 2024 01:19:58 GMT</pubDate><content:encoded>&lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8&quot; title=&quot;#浏览器&quot;&gt;#浏览器&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%96%87%E7%AB%A0&quot; title=&quot;#文章&quot;&gt;#文章&lt;/a&gt; 浏览器级图片懒加载&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://web.dev/articles/browser-level-image-lazy-loading?hl=zh-cn&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://web.dev/articles/browser-level-image-lazy-loading?hl=zh-cn&quot;&gt;https://web.dev/articles/browser-level-image-lazy-loading?hl=zh-cn&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://web.dev/articles/browser-level-image-lazy-loading?hl=zh-cn&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;此博文将介绍加载属性以及如何使用该属性来控制图片的加载。&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;web.dev&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;针对 Web 的浏览器级图片延迟加载  |  Articles  |  web.dev&quot; src=&quot;/static/https://cdn4.telesco.pe/file/W2t9QcMfhwN_mxqY04o9udYmUmcBvSKqkUc2W6yZE9GkK9XzsbICbia2YoilL51QZ3xLFlTQ4-vNkAyNvNsOBO4hT-UPRiKHQPK0mBShZKezpPGq-yWLyBuCj4UbhmUrHZcnxkgtwJ6FxkS7_DP-pGTGiRWs48Qx7RTsah7AfB2f3fm9w48GheBWPNEwhxesWhDXdf4tfPgTsqY31Hbck72yA54ZfGlkO0krifMdRX9VGnI1Wu0e36j6TXS399iB2p8Hu0PjFqAvS1ebZwVEhZJmM-wcgeCv_uZKqCxMyEi8IVm1j6TX_IqvN11mcMNJrZcM5Y4n4F9sF5ktKaF14w.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;针对 Web 的浏览器级图片延迟加载  |  Articles  |  web.dev&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;此博文将介绍加载属性以及如何使用该属性来控制图片的加载。&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>#文章 #浏览器 #原理  一篇通过丰富的交互式组件讲解浏览器如何渲染的整个流程</title><link>https://channel.meo-ai.com/posts/51</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/51</guid><pubDate>Tue, 12 Nov 2024 23:49:36 GMT</pubDate><content:encoded>&lt;a href=&quot;/search/result?q=%23%E6%96%87%E7%AB%A0&quot; title=&quot;#文章&quot;&gt;#文章&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8&quot; title=&quot;#浏览器&quot;&gt;#浏览器&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%8E%9F%E7%90%86&quot; title=&quot;#原理&quot;&gt;#原理&lt;/a&gt;  一篇通过丰富的交互式组件讲解浏览器如何渲染的整个流程。&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://abhisaha.com/blog/exploring-browser-rendering-process/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://abhisaha.com/blog/exploring-browser-rendering-process/&quot;&gt;https://abhisaha.com/blog/exploring-browser-rendering-process/&lt;/a&gt;</content:encoded></item><item><title>#浏览器 #网站 #原理 HTTP 如何工作 漫画</title><link>https://channel.meo-ai.com/posts/16</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/16</guid><pubDate>Tue, 05 Nov 2024 06:19:02 GMT</pubDate><content:encoded>&lt;a href=&quot;/search/result?q=%23%E6%B5%8F%E8%A7%88%E5%99%A8&quot; title=&quot;#浏览器&quot;&gt;#浏览器&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E7%BD%91%E7%AB%99&quot; title=&quot;#网站&quot;&gt;#网站&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%8E%9F%E7%90%86&quot; title=&quot;#原理&quot;&gt;#原理&lt;/a&gt; HTTP 如何工作 漫画&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://howhttps.works/zh/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://howhttps.works/zh/&quot;&gt;https://howhttps.works/zh/&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://howhttps.works/zh&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;🙀 A cat explains how HTTPS works...in a comic! 😻&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;howhttps.works&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;How HTTPS Works&quot; src=&quot;/static/https://cdn4.telesco.pe/file/lAOJeLOmKx56DAHFMX-i8vTxoSSlDfvskwxD2ss9UUQIv1-tB2urLmynXatRMGbmLkSlk8pC_T9ezIbceHqKGtBiPWuwVq_ElXZ3QbhWTQe0HoeSxPVOG13Q-vBgH0Mbx_CvgVUqC_vUk8D85nxB_ydb6yUiMTSMVT0_sb0fJMIeAnCALYX1QeN8QkZXGaPnNN2z3SnwYzNzF3Ekyb66UyVXs5IUr_EiMV-orMqM8kfQBl8KYZDFBDifPPAiT9CmU3xlEVGUSvNgZkbRf85ZWFLBzDZsJAVi2yi91EJmZ3QpzhAp_XNyKRAPauJzC9lRMuGyIVbcLVFsnAy4jsPRIw.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;How HTTPS Works&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;&lt;i class=&quot;emoji&quot; style=&quot;background-image:url(&apos;//telegram.org/img/emoji/40/F09F9980.png&apos;)&quot;&gt;&lt;b&gt;🙀&lt;/b&gt;&lt;/i&gt; A cat explains how HTTPS works...in a comic! &lt;i class=&quot;emoji&quot; style=&quot;background-image:url(&apos;//telegram.org/img/emoji/40/F09F98BB.png&apos;)&quot;&gt;&lt;b&gt;😻&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;/a&gt;</content:encoded></item></channel></rss>