这个polyfill 如何为 document.queryselectorall 工作?

2023-11-29

我想了解 queryselectorall 的这个polyfill?特别是这一行:

styleTag.styleSheet.cssText = selector + "{x:expression(document.__qsaels.push(this))}";

https://gist.github.com/connrs/2724353

if (!document.querySelectorAll) {
    document.querySelectorAll = function(selector) {
        var doc = document,
            head = doc.documentElement.firstChild,
            styleTag = doc.createElement('STYLE');
        head.appendChild(styleTag);
        doc.__qsaels = [];

        styleTag.styleSheet.cssText = selector + "{x:expression(document.__qsaels.push(this))}";
        window.scrollBy(0, 0);

        return doc.__qsaels;
    }
}

它正在滥用expression“特征”CSS 的。计算样式时x属性(发生在由scrollBy(0, 0)),Internet Explorer 将为所有与选择器匹配的元素执行此代码片段。

CSS表达式被官方鄙视从 IE 8 开始...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

这个polyfill 如何为 document.queryselectorall 工作? 的相关文章

随机推荐

  • MongoDB 未授权查询 admin.system.users

    我对 MongoDb 有点陌生 我正在使用 MongoDb v 2 4 这里的问题是 当我使用 auth 参数运行 mongod 时 即使在经过身份验证后 我也无法执行简单的操作 例如 显示用户 但如果我在没有 auth 参数的情况下运行
  • 复选框未显示在下拉列表中

    我必须从下拉列表中进行多项选择 所以我已经提到了这个link 但是 当我尝试在浏览器中打开该程序时 我没有看到该复选框 也无法选择更多数据 我的脚本看起来像这样
  • 如何在liferay DXP中添加语言图标

    如何在liferay 7 liferay ce portal 7 0 ga4 中添加语言图标图像 我已按照以下文章中提到的步骤进行操作 https web liferay com web salman khan blog blogs add
  • Java正则表达式匹配无回车符后跟换行符

    我试过了 r n但这行不通 你怎么做到这一点 我很欣赏 在类似 Java 的代码中 您需要使用 r n 谢谢你 根据您的要求 r n 前面有除回车符之外的任何字符的换行符 这意味着换行之前必须有一个字符 and 两个符号将被匹配
  • ASP.NET Masterpage 中的 Google Maps API:为什么它保持空白?

    当在 Visual Studio localhost port 服务器中启动时 这个简单的示例以纯 html 运行
  • D3:树形图中的超链接

    我在超链接 Reingold Tilford 树图中的子元素时遇到问题 该图是在 D3 中构建的 并且基于 Mike Bostock 使用的示例 http bl ocks org mbostock 4339184 我的代码和 JSON 文件
  • 如何将 ASP.NET 网站转换为 SharePoint 网站?

    假设您有一个包含隐藏代码的 ASP NET 站点 现在 您需要将此网站移动到 SharePoint 环境 在该环境中它将成为其自己的 Web 应用程序中网站集的根网站 在不完全重新设计每个页面的情况下实现这一目标的最简单方法是什么 以下是一
  • api <21 的可绘制着色

    是否可以为 api
  • C# 循环遍历 List> 以填充 DataTable

    我需要循环遍历字典列表 List
  • iPhone 上的自定义相机变焦功能

    我是 XCode 新手 我正在尝试开发具有覆盖视图的自定义相机 我能够很好地加载它并且工作得很好 现在我想添加通过叠加视图上的按钮激活的缩放功能 有人可以指导我吗 我试图找出如何变焦相机 但我还没有找到任何东西 谢谢 您可以使用camera
  • 弹出窗口外部点击设置为 false [setOutsideTouchable(false)] 不起作用

    创建布局充气器 尝试 LayoutInflater inflator LayoutInflater from this 创建视图 final View menuview inflater inflate R layout menu View
  • Gatsby - 页面刷新损坏

    我的盖茨比网站上的一个页面出现问题 如果我从任何其他页面转到该页面 那么它会呈现良好的效果 但是 如果我直接点击链接 或者在加载后刷新页面 那么它就无法正确呈现 所有其他页面都呈现良好 与此不同的一件事是使用柔性显示布局 查看页面结构 它的
  • x 轴为 24 小时的条形图,日期时间数据仅为本部分的开头

    我想绘制一个条形图 或直方图 但不是其他图 使得 x 值对应于时间段 但 x 轴标签是从 00 00 到 23 59 间隔为半小时 问题出在我的数据框中 开始时间 列中的值的类型为 datetime time 看起来像 0 00 30 00
  • JQuery UI 选项卡 - 微调器背景图像

    All 我正在使用 JQuery UI 选项卡 单击选项卡时 我希望选项卡显示选项卡标题以及旁边的旋转动画 gif 加载选项卡后 图像应该隐藏 我怎样才能实现这个目标 Thanks 添加微调器选项tabs tabs tabs spinner
  • 获取 Google Drive NodeJS 客户端的上传进度?

    当我们从以下位置获取请求对象后req drive files insert如何使用它查找文件上传进度 我在req string多次调用但无济于事 function uploadFile var path untildify workspac
  • 如何测量服务器代码的性能和 TCP RTT?

    我创建了一个基本的 TCP 服务器 它以协议缓冲区格式读取传入的二进制数据 并写入二进制消息作为响应 我想对往返时间进行基准测试 我尝试了 iperf 但无法让它多次发送相同的输入文件 除了可以重复发送二进制输入文件之外 还有其他基准测试工
  • 将 Octave 代码集成到平均堆栈网站

    超级用户不喜欢这个问题 所以我把它发布在这里 我在 Octave 中有一组脚本来执行机器学习算法 我还有一个mean stack 网站 我的问题是是否可以将此 Octave 代码集成到网站的前端或后端 我必须用 JavaScript 或 N
  • SQL“转换”查询

    我的表中有这些数据 使用 SQL Server 2005 ID ParentID StartTime EndTime 77 62 08 00 00 11 00 00 78 62 12 00 00 15 00 00 79 62 18 00 0
  • 定义一个返回数组的函数

    我有以下代码 Program function as an array implicit none integer i integer parameter N 10 real 8 x N y N f N do i 1 N x i float
  • 这个polyfill 如何为 document.queryselectorall 工作?

    我想了解 queryselectorall 的这个polyfill 特别是这一行 styleTag styleSheet cssText selector x expression document qsaels push this htt