1

さて、私がやりたかったことは、DOM イントロスペクションを使用して DOM の現在の状態を再帰的に分析し、それを単一の書式設定された文字列として返し、別の場所に表示することでした。私の目的には、標準の DOM 関数または JQuery で十分です。これまでのところ、次のようなことを試しました

var txt = $("body").tagName;
var txt = $("body").get();
var txt = $("body").nodeName;
var txt = new String($("body").tagName);

など。
これらのいずれかを試すたびに、ノード オブジェクト自体が返されるか、未定義になります。オブジェクト自体の代わりに body や < body > などの文字列を取得できるようにするにはどうすればよいですか?
さらに言えば、文字列として返される属性の名前と値を取得するにはどうすればよいでしょうか?

4

5 に答える 5

3

get(n)jQuery オブジェクトの DOM プロパティを確認する場合は、jQuery オブジェクトから元の DOM ノードを取得するために使用する必要があります。ここnで、 は jQuery オブジェクトの n 番目の要素です。

nodeNameノードの名前を大文字で取得します。getAttribute('attributeName')または、単に.attributeName属性の値を取得するために使用できます。

// Contrived example; returns BODY
var n = document.body.nodeName;

// Get the value of an attribute from an element
var n = document.getElementById('id').title;

// Unsupported attribute's value need to be obtained through `getAttribute`
var n = document.getElementById('id').getAttribute('placeholder');

DOM の機能とプロパティの完全なリストについては、次の表を参照してください: http://www.quirksmode.org/dom/w3c_core.html

于 2010-11-18T17:33:55.417 に答える
1

タグ名を取得するには、次を使用できます: $("body")[0].tagName;

オブジェクト内の要素の属性を取得するには、次を使用できます。 $("body")[0].attributes; そのオブジェクトをループして、キーと値のペアを取得します。

于 2010-11-18T17:30:54.113 に答える
0

var txt = $("body")[0].tagName;

:tagNameは大文字で返されます。

于 2010-11-18T17:26:30.157 に答える
0

document.getElementsByTagName("div")[0].tagNameジェネリック用。

于 2010-11-18T17:31:54.793 に答える
0

jQuery を使用すると、次のようにオブジェクトのタグを取得できます。

var txt = $("body").attr("tagName"); //returns "BODY" (uppercase)

その他の属性については、属性の名前を挿入します。

var txt = $("div").attr("class"); //returns class of the div
var txt = $("a").attr("title"); //returns title of the anchor

.attr() メソッドのドキュメントは次のとおりです: http://api.jquery.com/attr/

于 2010-12-23T12:23:33.670 に答える