选择带有 JavaScript 和/或 CSS 的 Shadow DOM?

2024-04-08

Chrome 似乎已被弃用/deep/ and >>> and ::shadow: https://www.chromestatus.com/features/6750456638341120 https://www.chromestatus.com/features/6750456638341120

有谁知道是否还有其他方法来访问 Shadow DOM?

我的用例是试图找出输入的样式。具体来说,我试图检测占位符是否正在显示。

我试过了el.shadowRoot但它返回 null 并且docs https://developer.mozilla.org/en-US/docs/Web/API/Element/shadowRoot因为它非常稀疏。


您只能访问通过调用创建的元素的 Shadow DOMattachShadow( { mode: 'open' } )。如果是这种情况,请致电shadowRoot应该管用。

您无法从用户代理控件访问 Shadow DOM (<input>, <select>),由浏览器添加。

要检查占位符是否显示,我将验证它是否存在以及输入值是否为空:

if ( myInput.getAttribute( "placeholder" ) && !myInput.value.length )
    //the placeholder is being displayed
myInput.oninput = function() {
  if (myInput.getAttribute("placeholder") && !myInput.value.length)
    myInput.classList.add("empty")
  else
    myInput.classList.remove("empty")
}
 body {
   padding: 100px;
 }
 input {
   border: 2px solid;
   padding: 10px;
   outline: none;
 }
 input:valid {
   border-color: springgreen;
 }
 input:invalid {
   border-color: tomato;
 }
 input[placeholder].empty {
   border-color: darkturquoise
 }
<input type="text" required placeholder="the placeholder" id="myInput" class="empty">

Update

Chrome 和 Safari 支持 CSS 伪类:placeholder-shown当占位符显示时,可用于设置元素的样式。

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

选择带有 JavaScript 和/或 CSS 的 Shadow DOM? 的相关文章

  • 禁用引导列上的滚动

    我正在尝试禁用引导列上的滚动 这是我的代码 div class container fluid h 100 div class row h 100 div class col 4 h 100 bg dark fixed div div cl
  • 我想检查 $('#td1').text() === "x" 是否?

    我想检查innerHtml是否有X或O 所以我不能再次添加任何其他东西 但它不起作用 添加检查代码后它就停止了 我在这里尝试做一个简单的XO游戏来更熟悉javascript和jquery 我也不确定是否可以用 jQuery 做到这一点
  • 使用 JavaScript 使链接保持活动状态并在单击时显示悬停效果

    I am struggling to make this work I d like to make it where if O F is clicked the hover state stays active if another li
  • 使用 jQuery/JS 打开时使
    标签的内容具有动画效果

    我只想要 HTML5 的内容details标记为 滑行 动画打开 而不是仅仅弹出打开 立即出现 这可以用 jQuery Javascript 实现吗 Fiddle http jsfiddle net 9h4Hq HTML
  • 使用 Angular 下载具有动态 src 的脚本

    Angular 提供了通过动态名称动态加载模板的方法ng include 该部分中的内联 JS 和 CSS 可以正常加载 但没有一个好的方法来下载带有动态 url 的脚本 我们需要下载脚本 相对于调用它们的 html 部分的路径 即我们有一
  • 如何抑制窗口鼠标滚轮滚动...?

    我正在开发嵌入页面中的画布应用程序 我有它 因此您可以使用鼠标滚轮放大绘图 但不幸的是 这会滚动页面 因为它是文章的一部分 当我在 dom 元素上滚动鼠标滚轮时 是否可以阻止鼠标滚轮在窗口上滚动 附加鼠标滚轮 不是 Gecko DOMMou
  • 可以使用 jQuery 或 Javascript 将图片的特定部分用作链接吗?

    我有这个想法 将图片 而不是文本 的各个部分链接到不同的页面或网站 并且我想在不实际创建不同的照片并将它们彼此靠近的情况下完成 这样看起来就像是一张完整的图片 这里有人知道如何使用 JavaScript 的变体 例如 jQuery 或纯 J
  • Javascript正则表达式用于字母字符和空格? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我需要一个
  • 除了更改标题之外,如何在 Firefox 中强制另存为对话框?

    有没有办法在 ff 中强制打开 www example com example pdf 的另存为对话框 我无法更改标题 如果您可以将文件以 Base64 格式输出到客户端 则可以使用 data uri 进行下载 location href
  • 为什么是 javascript:history.go(-1);无法在移动设备上工作?

    首先 一些背景 我有一个向用户呈现搜索页面 html 表单 的应用程序 填写标准并单击 搜索 按钮后 结果将显示在标准部分下方 在结果列表中 您可以通过单击将您带到新页面的链接来查看单个结果的详细信息 在详细信息页面中 我添加了一个 返回结
  • 在requestAnimationFrame中使用clearRect不显示动画

    我正在尝试在 HTML5 画布上做一个简单的 javascript 动画 现在我的画布是分层的 这样当我收到鼠标事件时 背景层不会改变 但带有头像的顶层会移动 如果我使用 requestAnimationFrame 并且不清除屏幕 我会看到
  • 保持未知数量的 div 居中,每行最多 4 个

    我有一个简单的问题 但我自己无法解决 简而言之 有一个未知电话我必须在页面中放置的元素数量 最多 每行 4 个元素 但仍居中 此图片给您一个提示 我为了示例而设置它 详细 在上图中我涵盖了不同的场景 例如 如果总共有 5 个元素 则应使用第
  • 如何在react-native中获取Text组件的onPress值

    我是一名新的 React Native 开发人员 我想使用 onPress 获取 Text 组件的值并将其传递给函数
  • 如何使输入字段和提交按钮变灰

    我想变灰这两件事 http doorsplit heroku com 歌曲输入字段和提交按钮 直到用户输入艺术家 有没有一种简单的方法可以通过 JQuery 来做到这一点 艺术家输入字段的id是 request artist 你可以这样做
  • Javascript 数组到 VBScript

    我有一个使用 Javascript 构建的对象数组 我需要使用 VBScript 读取它 如下例所示 我找不到在 VbScript 代码中循环遍历数组的方法myArray object 这个例子是我的问题的简化 我无法更改页面的默认语言 这
  • 避免响应式页面的重复内容

    我目前正在做一个涉及响应式设计的项目 整个布局应该使用HTML和CSS来实现 我知道可以使用 java 脚本将内容从一个列布局移动到另一列布局 而无需复制内容 但是使用 HTML 和 CSS 是否可以实现相同的效果 以下面的例子为例 它会在
  • 模块构建失败(来自 ./node_modules/babel-loader/lib/index.js)Vue Js

    我从 GitHub 下载了一个我和我的朋友正在开发的项目 但是当我尝试运行时 npm run serve 我收到这个错误 src main js 中的错误 Module build failed from node modules babe
  • 为什么我不能在 AngularJS 中使用 data-* 作为指令的属性名称?

    On the t他的笨蛋 http plnkr co edit l3KoY3 p preview您可以注意到属性名称模式的奇怪行为data 在指令中 电话 Test of data named attribute br
  • 条件在反应本机生产中失败,但在开发中有效

    我创建了一个反应本机应用程序 我需要通过它进行比较 如果属实 就会执行死刑 问题是 该条件适用于 React Native 开发模式 而不适用于 React Native 生产版本 我使用 firebase 作为数据库 也使用 redux
  • 无效字符错误:“fred”

    我确信他一定是一个新手问题 简单来说 我想定义我的第一个 Polymer dart 组件 只是我一直在同一个减速带上踢脚趾 为了使事情变得非常简单 我将其简化为一个非常简单的示例 我做了一个简单的rename示例 跑表 来自 Dart 组件

随机推荐

  • 跟踪 vb.net 中函数调用的持续时间

    在我们的 VB6 应用程序中 我们添加了一些实用函数来跟踪函数所花费的时间 我们这样做是为了跟踪性能瓶颈 基本上 它的工作原理是有两个实用函数 StartTickCount 和 EndTickCount 您将在每个函数中传递函数名称 函数将
  • 如何让我的 PUT_LINE 语句显示在 TOAD 中?

    此代码可以编译 但在 TOAD 中不会显示 hi wo 输出 CREATE OR REPLACE PROCEDURE AdelTest IS tmpVar NUMBER BEGIN DBMS OUTPUT ENABLE 100 in INT
  • 单击链接后,javascript何时停止在页面上运行?

    我有一个运行各种 javascript 代码的页面 包括调用setTimeout 如果用户单击链接导航到另一个页面 该页面上的 javascript 在什么时候停止运行 因此我的 setTimeout 调用的代码将不再被调用 例如 单击链接
  • 我如何使用 Android EffectFactory 类?

    我厌倦了开发带有图像处理的示例应用程序 在我的应用程序中我需要添加一些color effects Grayscale sepia 在我的位图上 我参考了开发人员文档Doc 1 http developer android com refer
  • react-native\react.gradle' 不存在

    我使用 React Native 创建了一个应用程序 并且正在尝试生成 apk 完成文档中的所有操作后http facebook github io react native docs signed apk android html con
  • 雅罗斯拉夫斯基的双主元快速排序算法

    我正在研究我发现的双枢轴快速排序here http aofa2013 lsi upc edu slides Nebel pdf 幻灯片第 20 页 比较 雅罗斯拉夫斯基平均需求 1 9 n ln n 经典快速排序需要 2 n ln n 比较
  • 多个 jQuery-UI 滑块的合计

    我正在尝试实现一个有 4 个 jQuery UI 滑块的页面 并且我想让所有 4 个滑块的总数永远不会超过 400 我不介意以哪种方式实现这一点 它可以从 0 开始 一旦您更改 1 个滑块 剩余的可用总数就会减少 或者将滑块设置为超过最大值
  • Dart 扩展了 Map 以便于延迟加载

    我正在尝试将数据从服务器延迟加载到地图中 出于这个原因 我想向 Map 添加功能 以便当键不存在时 会进行调用以获取值 我尝试的是这样的 class LazyMap extends Map use length for now When t
  • 保存大图像 - 光栅问题

    我已经问过如何保存大图像的问题 我认为我走在正确的轨道上 但我仍然需要一些建议 我有一个 12000 x 12000 的图像 我需要将其另存为 png 无法使用 BufferedImage 我已经被建议使用 RenderedImage 接口
  • 使 MediaController 显示而不隐藏

    我尝试使用 MediaController 来播放音乐 我希望 MediaController 出现 直到按下 后退 按钮 现在我尝试了下面的代码 MediaController mediaController new MediaContr
  • vim colorchem 显示不正确的颜色

    我刚刚抓住了 Ultimate Vim Distribution http vim spf13 com 它附带了一堆颜色方案 由于某种原因 在我的 vimrc 中设置颜色方案 例如 colorscheme 公司 会导致与颜色方案实际定义的颜
  • 为什么这个语句在 java 中不起作用 x ^= y ^= x ^= y;

    int x 1 int y 2 x y x y 我期望这些值被交换 但它给出 x 0 和 y 1 当我用C语言尝试时 它给出了正确的结果 您的陈述大致相当于此扩展形式 x x y y x x y 与 C 不同 在 Java 中 保证二元运算
  • 使用 ng-repeat 和过滤器时数组中对象的 $index

    我对 Angular 相当陌生 并且能够在某种程度上解决问题 但我似乎无法找到这个场景的答案 我有一系列对象 我正在从 firebase 中将其拉下来 我对对象使用 ng repeat 然后相应地显示数据 我试图将索引作为路由参数传递给 编
  • auto foo(...) ->decltype(this) 有一些解决方法吗?

    我有下一堂课 并尝试声明成员函数 该函数将返回指向该类型的指针 但下一个代码 template
  • Django Admin内联递归ManyToMany

    我有以下模型 其自身具有多对多关系 class Ticket models Model STATUS 0 Open 1 Closed status models SmallIntegerField default 0 choices STA
  • 将指针从基类型转换为子类型

    我正在为我的一个项目构建一个简单的游戏设计 我有以下课程 class Character public virtual void Display virtual void SetParameters char param class Non
  • 测量函数调用的 CPU 周期

    我正在寻找一种方法来测量线程上的函数调用所占用的 cpu 周期 伪代码示例 void HostFunction var startTick CurrentThread CurrentTick does not exist ChildFunc
  • 为什么我的 R 中的“Fizz Buzz”测试不起作用?

    我听说这是一个常见的面试问题 请问这里有什么想法 谢谢 for i in 1 100 if i 15 0 print fizzbuzz else if i 3 0 print fizz else if i 5 0 print buzz el
  • 当 Spark 主内存无法容纳文件时,Spark 如何读取大文件(PB)

    在这些情况下大文件会发生什么 1 Spark从NameNode获取数据的位置 Spark 是否会同时停止 因为根据 NameNode 的信息 数据大小太长 2 Spark按照datanode块大小对数据进行分区 但所有数据不能存储到主内存中
  • 选择带有 JavaScript 和/或 CSS 的 Shadow DOM?

    Chrome 似乎已被弃用 deep and gt gt gt and shadow https www chromestatus com features 6750456638341120 https www chromestatus c