時々私はこのような要素を取得する必要があります:
var object = document.getElementById('ObjectName');
そして時々このように:
var object = document.getElementById('#ObjectName');
それらの違いは何ですか?
時々私はこのような要素を取得する必要があります:
var object = document.getElementById('ObjectName');
そして時々このように:
var object = document.getElementById('#ObjectName');
それらの違いは何ですか?
いいえ、あなたは見ていません
var object = document.getElementById('#ObjectName');
#
要素の id がで始まることを意味し、HTML4 id は"with a letter ([A-Za-z])" でしか始まらないため、それはわかりません。
あなたが目にするのは、クエリ言語を使用してオブジェクトを見つけることができるjQueryライブラリを使用している人々です。
var elem = $('#objectId');
そして将来的には、同様のクエリ言語をquerySelectorまたはquerySelectorAllで使用する人がますます増えるでしょう。
これは、CSS#
の ID セレクターの一部です。jQuery やネイティブ DOM メソッド、.querySelector
querySelectorAll
しかし、「従来の」DOM メソッドでは、#
に特別な意味はありません。文字通りID を持つgetElementById('#ObjectName')
要素、つまりを選択します。#ObjectName
<div id="#ObjectName">
前者は で要素を取得しid="ObjectName"
ます。後者は で要素を取得しid="#ObjectName"
ます。
Selectorのコンテキストでは(たとえば CSS で使用されますが、 では使用されdocument.querySelector
ませんgetElementById
)、#
文字はそれに続くテキストが ID であることを示します。
document.querySelector('ObjectName')
(タイプ セレクターを使用して) get <ObjectName />
(有効な HTML ではありません) をdocument.querySelector('#ObjectName')
取得し、 で要素を取得しid="ObjectName"
ます。
'#ObjectName'
JQuery (編集:または他の JavaScript ライブラリ)
'ObjectName'
DOM (getElementById)