私はJavascriptを少し新しくしました。私は私の大きなページに必要なものをテストするためにこのダミースクリプトを書いています。私は、最も簡単に、hrefの値を取得し、hrefの値を変更してから再度見たいと思います。簡単にするために、hrefの値を変更して属性値を2回呼び出すだけの部分を削除しました。しかし、2回目に属性値にアクセスすると、以下に投稿したエラーが表示されます。私はFirebugから1つと、Dragonflyから1つ(Operaから)の2つのエラーログを投稿しています。document.getElementById throw TypeError
ご迷惑をおかけして申し訳ございません。ありがとう。
私がスクリプトでもう1つ問題があるのは、ロードが完了しないことです。私はいつも(Firefox 3.6.8では)タブのタイトルに丸い丸い小さな記号が表示されています。それは私をそんなに悩ますことはありませんが、誰かが考えを持っているなら私に教えてください。
<!-- This file is used to set attribute value for href. -->
<html>
<head>
<script type="text/javascript">
function hrefvalue()
{
var thisthang = document.getElementById("1").childNodes[0].getAttribute("href");
document.write(thisthang);
document.write("\n");
var newnew21 = document.getElementById("1").childNodes[0].getAttribute("href");
document.write(newnew21);
}
</script>
</head>
<body>
<div id="1"><a href="focusdude.htm">click here</a></div>
<button type="button" onclick="hrefvalue()">Click me instead</button>
</body>
</html>
エラーログ:
1. Firebugの - >のdocument.getElementById( "1")がnullである
2.トンボ - >
キャッチされない例外:例外TypeErrorは:「のdocument.getElementById(変換できません。 // localhostの/ D:/シカゴ%の20pics /ウェブサイト%の20pics /ウェブサイト%20root/trial5 "1")」
ファイルの行8で投げ
エラー、hrefvalueの列0を()オブジェクトへ。 htm:
var newnew21 = document.getElementById( "1")。childNodes [0] .getAttribute( "href");すべての魚のために再び hrefvalue()
そして感謝:D
なぜ最初の機能は機能しますか?
document.write(thisthang)の出力は得られますが、newnew21の出力は出力されません。 – ajrocker
あなたが 'document.write'を呼び出す前に* * * *最初に*読むべき要素を破壊していないので、 – Quentin
*" IDは数字で始めることはできません "* FWIW、 [HTML4.01で](http://www.w3.org/TR/html401/types.html#type-name)、それは本当です[CSSで]真実です(http://www.w3.org /TR/CSS21/syndata.html#value-def-identifier)、[HTML5ではこれが可能です](http://www.w3.org/TR/html5/elements.html#the-id-attribute)。私は 'id'、mindとして' 1'を使用しません。 (引用されたページには全くdoctypeが指定されていませんが、ちょっと) –