检索 HTML 标记的完整“签名”

Posted

技术标签:

【中文标题】检索 HTML 标记的完整“签名”【英文标题】:Retrieve an HTML tag full 'signature' 【发布时间】:2014-04-02 06:55:41 【问题描述】:

代码如下:

parsedhtml = $("<div id=\"foo\">Content</div>");
console.log(parsedHTML);

当我在 Chrome 中运行它时,在调试器的控制台中我可以看到

[div#foo, jquery: "1.9.1", constructor: function, init: function, selector: "", size: function…]

如何检索第一个参数,它是 HTML 元素的全名/签名?我的意思只是字符串,而不是整个 HTML 代码块?喜欢:

'div#foo'

【问题讨论】:

这只是Chrome devtools提供的便利;它只是隐藏了对其中的 DOM 元素的引用。但是可以在 JS 中复制它。 【参考方案1】:

我假设你想要这样的签名:div#someId.someClass1.someClass2

$.prototype.signature = function()
  return this.prop("tagName").toLowerCase()
   +(this.attr("id") ? "#"+this.attr("id") : "")
   +(this.attr("class") ? "."+this.attr("class").split(/\s+/).join(".") : "");
;
// Div with id="foo" and classes: ["bar", "baz"]
$("#foo").signature();
// "div#foo.bar.baz"

【讨论】:

如果你只想要标签类型和id,删除最后一个连接片段 我真的很希望有一个 JQuery 函数来做到这一点,但你的回答就可以了。谢谢! 已更新以将此扩展名反映为您想要的 $ - 有效吗?

以上是关于检索 HTML 标记的完整“签名”的主要内容,如果未能解决你的问题,请参考以下文章

Java 之 HTML

HTML中标记(又可称为元素或标签)的相关基础知识

Python爬虫基础——HTMLCSSJavaScriptJQuery网页前端技术

在 Android Studio 中生成签名 APK 时签名版本之间的区别 - V1(Jar 签名)和 V2(完整 APK 签名)?

Java数字签名算法--RSA

http://jwt.io 如何检索 keycloak 签名密钥?