javascript - 我可以使用 jQuery 创建一个 DOM 元素而不将它放在 DOM 中吗?
问题描述
我有很多地方不断向我的字符串添加标记,最终由 jQuery 输出append
到容器。我的问题是 - 我可以在没有实际存在的情况下伪造这个标记在 DOM 中,以便hasClass
在项目上执行操作吗?
解决方案
是的,如果您将 HTML 字符串传递给 jQuery,该元素(或多个元素)将在 jQuery 对象中创建,然后可以稍后将其放入 DOM 中:
const $div = $('<div>someDiv</div>');
$div.addClass('foo');
console.log($div.hasClass('foo'));
$('body').append($div);
.foo {
background-color: yellow;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
推荐阅读
- python - 如何从python中的字符串中提取最长的单词
- php - 在mac上找不到php类Redis
- pytorch - 如何在 Pytorch 中删除图层?
- node.js - 在 express 发送到客户端之前获取 cookie 的值 / 将 cookie 值存储在会话存储中
- python - 仅当相邻列中同一行的单元格为空白时,如何根据字符拆分字符串
- c++ - 引用临时文件与指向临时文件及其生命周期的指针
- python - 如何解决django在插入时出现mysql错误
- api - 如何在 swagger api 文档中添加更多参数
- python - 类型 'tensorflow.python.framework.ops.EagerTensor' 没有 len()
- dart - 当与 ScopedDecendentModel 以及自定义模型一起使用时,作用域模型返回一个空列表小部件