无法选择 id=":1" 的 div

2024-01-02

对网络东西有点菜鸟,但我有一个带有此标签的 div:

<div class="" id=":1" role="treeitem" aria-selected="false" aria-expanded="false" aria-level="1" aria-labelledby=":1.label" aria-setsize="10" aria-posinset="1">

我已经测试过我的 jQuery 可以正常工作(当前使用版本 2.1.3)。 我已经测试了许多其他关于选择器中冒号的 SO 帖子中推荐的选择器,然后是其他一些。我已经分别尝试了下面的每个 jQuery 调用,但没有一个真正隐藏了我想要获取的元素。

$(function() {
  $("#\\:1").hide();
  $("#\:1").hide();
  $(":1").hide();
  $("\3A1").hide();
  $("\3a1").hide();
  $("\3A 1").hide();
  $("\3a 1").hide();
  $('[aria-labelledby="\\:1.label"]').hide();
  $('[aria-labelledby="\\:1.label"] *').hide();

  $(document.getElementById(":1")).hide();
  $(document.getElementById("\:1")).hide();
});

要么什么也没有发生,要么我收到上述调用的语法错误。

顺便说一句,Chrome 说 CSS 路径是“#\3a 1”。

EDIT这有效:

$(function() {
  setTimeout(function() {
    $("#\\:1").hide();
  }, 1000);
});

我猜问题是 div 实际上没有加载或者什么的。这仍然是一个问题,因为上述解决方案由于明显的原因而存在缺陷。我会向 Google Group 询问这个 API(它是块状的),并且可能会在加载或其他情况下进行回调。

EDIT

完全是菜鸟错误——我正在寻找的内容实际上是插入到 init 函数中的。这就是为什么我通常调用 jQuery 时它不存在;我需要把它放在这里:

init = function() {

  Blockly.inject(document.getElementById('blocklyDiv'),
      {toolbox: document.getElementById('toolbox')});
  Blockly.Xml.domToWorkspace(Blockly.mainWorkspace,
      document.getElementById('startBlocks'));
  $("#\\:1").hide();
}

:1是完全有效的idHTML5 中的属性:

The id http://www.w3.org/TR/html5/dom.html#the-id-attribute属性指定其元素的唯一标识符 http://www.w3.org/TR/html5/infrastructure.html#concept-id (ID).

该值在所有值中必须是唯一的IDs http://www.w3.org/TR/html5/infrastructure.html#concept-id在元素的主子树 http://www.w3.org/TR/html5/infrastructure.html#home-subtree并且必须至少包含一个字符。价值 不得包含任何空格字符 http://www.w3.org/TR/html5/infrastructure.html#space-character.

然而,它可能需要一些转义。

CSS - CSS ID 选择器

在 CSS 中,要通过 ID 获取元素,请使用ID选择器 http://www.w3.org/TR/CSS21/selector.html#id-selectors:

文档语言的 ID 属性允许作者分配一个 文档树中一个元素实例的标识符。 CSS ID 选择器根据其标识符来匹配元素实例。 CSS ID 选择器包含一个“#”,紧随其后的是 ID 值,其中 必须是一个标识符。

然而,:1不是有效的标识符:

In CSS, 身份标识 http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier(包括元素名称、类和 ID)选择器 http://www.w3.org/TR/CSS21/selector.html) 只能包含字符 [a-zA-Z0-9] 和 ISO 10646 字符 U+00A0 及更高字符,加上连字符 (-) 和下划线 (_);它们不能以数字、两个连字符或后跟一个连字符开头 按一位数字。标识符还可以包含转义字符和任何 ISO 10646 字符作为数字代码(请参阅下一项)。例如, 标识符“黑白?”可以写成“B\&W\?”或“B\26 W\3F”。

因此,您不能使用选择器#:1,但你可以将其转义为#\:1.

#\:1 {
    /* CSS styles */
}

JavaScript - CSS ID 选择器

在 JavaScript 中,您可以使用document.querySelector https://developer.mozilla.org/en-US/docs/Web/API/Document.querySelector获取与 CSS 选择器匹配的(第一个)元素。这同样适用于 jQuery。

您可以使用CSS.escape https://developer.mozilla.org/en-US/docs/Web/API/CSS.escape[警告-实验技术]对字符串进行转义,使其成为有效的CSS标识符:

document.querySelector("#" + CSS.escape(":1"));

或者,您可以使用#\:1直接地。但是,请注意,在 JavaScript 字符串文字中,字符\转义字符,所以"#\:1"变成"#:1"。因此,你必须逃离\和另外一个\:

document.querySelector("#\\:1");

请注意,即使您使用CSS.escape,如果 ID 包含\或引号,您也必须在字符串文字中转义它们。

JavaScript-ID

但 JavaScript 也有document.getElementById https://developer.mozilla.org/en-US/docs/Web/API/document.getElementById,比 CSS 选择器更快、更简单的方法。

它直接通过 ID 获取元素,而不是 CSS 转义版本:

document.getElementById(":1");

请注意,如果 ID 包含\或引号,您必须在字符串文字中转义它们。

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

无法选择 id=":1" 的 div 的相关文章

  • jQuery 从选择选项切换 div

    我需要从下拉选择选项框中切换 div 我想要它类似于汇编选择 http www ryancramer com projects asmselect examples example1 html对于 jquery 但我不想列出选项标签 而是希
  • 如何使用 javascript/jquery/AJAX 调用 Django REST API?

    我想使用 Javascript jQuery AJAX 在前端调用 Django Rest API 请求方法是 POST 但当我看到 API 调用它的调用 OPTIONS 方法时 所以 我开始了解access control allow o
  • 如何向 Rails 应用程序添加自定义字体?

    我想在 RoR 应用程序中使用几种字体 但它们的格式主要是 ttf 和 otf 等 我该如何将这些文件嵌入到我的 Rails 应用程序中 也就是说 一旦我将它们放入我的资产文件夹中 将它们嵌入我的 CSS 和 或 LESS 文件中的语法到底
  • 如何适应特定子元素的宽度?

    problem 我正在尝试创建一个技能表 我无法问下一个问题为什么 所以我创建了一个新帐户并询问 当前状态 我想将元素的宽度与 meter 也就是说 如何设定区块的标准 meter 子元素 在上面的 gif 中 img meter 我想要保
  • Perl:HTTP::微小删除留下损坏的锚标记

    我编写了一个脚本 该脚本收集从数据库读取的缓冲区内的所有 URL 检查该页面是否仍然存在 并使用 HTTP Tiny 从缓冲区中删除 URL 如果该 URL 无法访问或返回无效 问题是 HTTP Tiny 删除左锚标记 例如此处无效的文本
  • 在 jQuery 可排序中对多个选定项目进行排序?

    我试图在 jQuery 可排序集中选择多个项目 然后将选定的项目一起移动 这是我的弱点开始尝试使其发挥作用 http jsfiddle net benstenson CgD8Y 这是代码 HTML div class container d
  • 如何调用 google 的 getBasicProfile() 来仅单击按钮即可登录 google?

    我在我的网站上使用谷歌登录
  • 如何更改自动完成中的结果过滤器?

    我不想进行字面匹配 而是想通过正则表达式选择结果 我可以覆盖自动完成的默认行为来完成此任务还是需要替代结构 有一个内置的方法可以做到这一点 只需提供一个函数source http jqueryui com demos autocomplet
  • ToggleClass 动画 jQuery?

    我的网站上有一个部分 当用户单击时我希望它展开 我正在使用 jQuerytoggleClass为了这 expandable function e e preventDefault this closest article toggleCla
  • html css 下拉菜单

    这是我第一次在 Stack Overflow 上发帖 我不熟悉论坛发帖规定 所以请让我知道我做错了什么 我在论坛中研究过这个问题 但我所遇到的一切都没有给我明确的答案 我试图从 新闻 元素创建一个下拉菜单 但在运行代码时我从未得到任何可见的
  • 为什么将 x 和 y 设置为 0 时 svg 文本会消失?

    我刚刚开始阅读有关svg我提出了以下问题 我正在创建一个简单的svg with a text里面如下图所示 从我的阅读中我了解到x and y of the text标签声明文本在标签内的位置svg space 为什么当我同时设置x and
  • 如何打开弹出窗口并用父窗口中的数据填充它?

    如何使用 JavaScript jQuery 使用父页面中 JS 变量的数据填充弹出窗口 在我的示例中 我有一个文件名数组 我在父窗口中最多列出五个 如果还有更多 我想提供一个链接来打开弹出窗口并列出数组中的每个帖子 因此 如果我打开一个包
  • 即使在包裹后也具有等宽的弹性项目

    是否可以制作一个像这样的纯 CSS 解决方案 物品有一些min width 它们应该动态增长以填充所有容器宽度 然后换行到新行 列表中的所有项目都应具有相同的宽度 现在看起来是这样的 这就是我希望它看起来像的样子 我已经手动管理这些底部项目
  • @font-face 和 font-variant 是个坏主意吗?

    如果我使用 font face字体和font variant small caps对于相同的选择器 字体将回退到 Safari 中的下一个系统默认字体 我该如何解决这个问题 我一开始在创建一个示例来复制您的问题时遇到了一些麻烦 这让我意识到
  • 如何强制外部 div 扩展到内部 div 的高度?

    我有 ajax 到的数据 div class content 我希望外部 div 扩展到内部 div 的高度 我不知道该怎么做 HTML div class outer div class inner div class content S
  • Knockout.js 安全绑定

    我想使用带有淘汰赛的安全绑定 为此我使用敲除安全绑定 js https github com brianmhunt knockout secure binding 谁能解释一下为什么下面的代码不起作用 它会抛出一个错误 未捕获 淘汰 安全
  • php下拉菜单人口

    我正在尝试编写一个 php 脚本 该脚本将根据主下拉菜单的选择填充第二个下拉菜单 我想使用 jquery 来完成所有非页面刷新的事情 但我发现现有的所有东西都很难理解和修改 你知道有什么写得很好且易于理解的东西吗 或者可能是现有的教程 下面
  • mozilla pdf.js 没有全视图

    我喜欢这个 pdf 查看器https github com mozilla pdf js https github com mozilla pdf js Demo http mozilla github com pdf js web vie
  • 如何在表格列标题处垂直旋转文本

    我用过这个数据表 http www datatables net 在我的网页上 这是fiddle http jsfiddle net fxju7 2 链接我放置代码的地方 我想要 第一个数字第二个数字列应该垂直旋转 我已经做到了 但是 问题
  • 我可以根据同一容器中另一个元素的大小强制内联文本换行吗?

    考虑这个 jsbin http jsbin com ElIKOKe 3 edit html css output 我有这个html div class container span The lime outlined container h

随机推荐

  • 两个数组之间的差异

    我有以下两个数组 我想要这两个数组之间的差异 也就是说 如何找到两个数组中都不存在的值 array1 Array 0 gt 64 1 gt 98 2 gt 112 3 gt 92 4 gt 92 5 gt 92 array2 Array 0
  • 可以在外部html中使用Extjs的脚本吗?

    我已使用以下方法将手动编写的脚本加载到 Extjs Ext Loader LoadScript http docs sencha com extjs 4 1 3 api Ext Loader method loadScript Ext Lo
  • Java PDF 查看器

    我正在使用 java 和 RCP 并且尝试在我的视图中使用 Acrobat 显示 pdf 文档 我不需要改变它们 我的这段代码有这个错误 知道如何解决这个问题吗 P s 同样的时间效果很好 PDFFile pdfFile pdfFile P
  • 如何释放不再使用的 UIImage 内存

    我正在尝试将一些较小的图像合并为一个较大的图像 该应用程序崩溃是因为内存不足 但我不知道如何在使用内存后释放内存 因此它会不断累积 直到应用程序崩溃 addImageToImage 和 resizeImage 例程似乎导致了崩溃 因为在不再
  • 如何为采用单个数组参数的构造函数调用 New-Object?

    在 PowerShell 中 我想使用New Object调用单参数 Net 构造函数new X509Certificate2 byte byteArray 问题是当我使用 powershell 中的字节数组执行此操作时 我得到 新对象 找
  • 确定字符串是否经过两次 Base64 编码

    有什么方法可以确定字符串是否经过两次 Base64 编码 例如 是否有我可以使用的正则表达式模式preg match去做这个 实际答案 不要使用正则表达式 使用解码你的字符串base64 decode http php net manual
  • 模拟已弃用的seaborn distplots

    Seaborn distplot https seaborn pydata org generated seaborn distplot html现已弃用 并将在未来版本中删除 建议使用histplot https seaborn pyda
  • 在 flash builder as3 项目中使用 c++ lib

    是否可以在as3项目中使用c lib 闪存生成器 4 7 我有一个用 C 编写的项目 我想用 flash 构建 gui 我正在寻找一种使用 flash 并使用我的 c 库的方法 我猜想一个Flash http en wikipedia or
  • NetBeans - 在哪里可以找到 IDE 日志?

    我向以下人员报告了一个错误http issues apache org http issues apache org我必须给他们一个 IDE 日志 但我不知道在哪里可以找到它 我搜索了C Users MyUser但没有 netbeans 的
  • 应用程序配置不允许给定 URL Facebook 应用程序错误

    应用程序配置不允许给定 URL 应用程序设置不允许一个或多个给定 URL 它必须与网站 URL 或画布 URL 匹配 或者该域必须是应用程序域之一的子域 我已经研究了关于 SO 的最流行的问题 问题1 https stackoverflow
  • Python - 仅运行一行代码,而不运行脚本中其余的多行代码

    在 Python 中 在 IDLE 内 在文件编辑器窗口中 如何仅运行脚本中选定的单行代码 而不运行程序的其余行 您必须从命令行运行代码行 使用 c 命令 参数 假设您的文件名为 foo py python c import foo pri
  • 根据单词是否粗体更改单词样式的速度很慢

    我想更改活动文档中几个单词的样式 每个单词可能出现多次 有些词是粗体 有些是非粗体 单词存储在数组中Arr 如果找到的单词 X 是非粗体 则将样式替换为StyleA如果它是粗体 则将其更改为StyleB 以下代码有两个问题 1 粗体和非粗体
  • 什么是总线错误?它与分段错误有什么不同吗?

    总线错误 消息是什么意思 它与总线错误有何不同分段故障 https en wikipedia org wiki Segmentation fault 如今 总线错误在 x86 上很少见 当您的处理器甚至无法尝试请求的内存访问时 就会发生总线
  • 无法在 Next 中传递 props

    我正在使用 Next Js React SSR 制作服务器端渲染应用程序 Index js 只需在index中调用另一个组件Layout即可 import Layout from layout import React from react
  • 记录 CMake 模块的正确方法是什么?

    快速的 Google 搜索 实际上许多相当广泛的 Google 搜索 无法解释如何正确记录 CMake 模块 我正在寻找一种记录自定义 CMake 模块的方法 以便它们与cmake help module
  • Django Test 模拟 ImageField 阻止上传或测试后清理

    我正在为我的项目开发一个测试用例 涉及一些图像和文件字段 有些对象加载了固定装置 有些对象是在测试期间创建的 我用 InMemoryUploadedFile 模拟了我的图像 创建新的测试对象时 正在上传模拟图像 到 MEDIA ROOT 目
  • 如果你的基类有一个虚拟析构函数,你自己的析构函数自动是虚拟的

    我知道标题的说法是正确的 那么常规函数呢 例如 class Father virtual void foo class Son public Father void foo class GrandSon public Son void fo
  • 让 Karma、6to5ify 和 Istanbul 合作

    我有 Browserify 6to5ify 和 Karma 可以很好地发挥作用 成功运行我的规范 然而 当我添加代码覆盖率时 事情就变糟了 我尝试了几种方法 Add browserify istanbul转换为我的 karma conf j
  • 如果我想添加类型化属性,子类化 NSNotification 是正确的途径吗?

    我正在尝试子类化NSNotification Apple 的文档NSNotification陈述以下内容 NSNotification是一个没有实例变量的类簇 像这样 你必须子类化NSNotification并重写原始方法name obje
  • 无法选择 id=":1" 的 div

    对网络东西有点菜鸟 但我有一个带有此标签的 div div class 我已经测试过我的 jQuery 可以正常工作 当前使用版本 2 1 3 我已经测试了许多其他关于选择器中冒号的 SO 帖子中推荐的选择器 然后是其他一些 我已经分别尝试