- 締切済み
JavaScriptでリンクを設定したい
JavaScript超初心者です。 サイトで画像やテキストリンクが1ページにとても多く、 リンクアドレスも同一のものが数か所あります。 JavaScriptでリンクを設定すれば、リンクだらけにならないと聞いたので 使ってみようと思ったのですが、上手くいきません。 http://www.openspc2.org/reibun/javascript/link/020/ こちらのサイトを参考にやってみたのですが、 テキストリンク1カ所はできました。 でも、画像リンクはnullと表示されて画像も表示されなくなり、 2個目のテキストリンクはリンクになりません。 <a href="./aaa.html"><img src="./img/aaa.jpg" /></a> <a href="./aaa.html">あああ</a> <a href="./bbb.html"><img src="./img/bbb.jpg" /></a> <a href="./bbb.html">いいい</a> <a href="./aaa.html"><img src="./img/ccc.jpg" /></a> <a href="./aaa.html">ううう</a> このように表示されているリンクを JavaScriptでリンクを設定するにはどうしたらよいでしょうか? よろしくお願いします!
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- AsarKingChang
- ベストアンサー率46% (3467/7474)
いまいち?なのですが、 >テキストリンク1カ所はできました。 >でも、画像リンクはnullと表示されて画像も表示されなくなり、 >2個目のテキストリンクはリンクになりません。 こちらでそのソースをHTMLにしたところ、画像は素材がないのでエラーですが ちゃんとリンクになりましたよ。 <script type="text/javascript"> function ll() { document.write("<a href=アドレス><img src=./img/aaa.jpg />あああ</a>"); } </script> これ「以降」に、 <script type="text/javascript"> ll(); ll(); ll(); ll(); </script> こういうこと? もう少し、詳しく書いてもらえれば、 回答できると思うので、補足をお願いします。
補足
説明不足でわかりにくくてすみません。 <a href="./aaa.html"><img src="./img/aaa.jpg" /></a> <a href="./aaa.html">あああ</a> <a href="./bbb.html"><img src="./img/bbb.jpg" /></a> <a href="./bbb.html">いいい</a> <a href="./aaa.html"><img src="./img/ccc.jpg" /></a> <a href="./aaa.html">ううう</a> このタグはhtmlの1ページに点在するリンクで続けて書いてはありません。 <div> <div> <a href="./aaa.html"><img src="./img/aaa.jpg" alt="" /></a> </div> <div> テキスト文 </div> <div> テキスト文テキスト文<br /> <a href="./aaa.html">あああ</a> </div> </div> このようにブロックでいくつも分かれています。 同じURLや画像URLを数回、同一ページでリンクしたいです。 画像は<a href="./aaa.html"><img src="./img/aaa.jpg" /></a>や<a href="./aaa.html"><img src="./img/ccc.jpg" /></a>のように違う画像でリンク先は同じというのが多いです。 記述は.jsで外部に window.onload = function(){ var linkID = "aaa"; // リンクを設定するタグのID var linkURL = "https://xxx.com/aaa.html"; var baseTag = document.getElementById(linkID); var link1 = baseTag.firstChild.nodeValue; var aTag = document.createElement("a"); aTag.href = linkURL; aTag.appendChild(document.createTextNode(link1)); baseTag.replaceChild(aTag, baseTag.firstChild); } htmlは <span id="aaa">あああ</span> 画像リンクで上記の記述を var linkID = "ccc"; // リンクを設定するタグのID var linkURL = "https://xxx.com/aaa.html"; と追加してhtmlに <span id="ccc"><img src="./img/ccc.jpg" /></span> このように記述すると画像がnullと表示されてリンクもされません。 テキストリンクも上段のリンクだけが可能で、それ以降でIDを変更してもリンクになりません。 説明ヘタで申し訳ございませんが、これでわかりますでしょうか。 function ll() { document.write("<a href=アドレス><img src=./img/aaa.jpg />あああ</a>"); } 画像リンクは記述が違うのでしょうか? よろしくお願いします。