リンクの表示文字を変えたい

このQ&Aのポイント
  • リンクの表示文字を変える方法について困っています。
  • document.link.textを使用して表示文字を変えようとしてもエラーが発生します。
  • 代わりにどのような方法が使えるか教えてください。
回答を見る
  • ベストアンサー

リンクの表示文字を変えたい

リンクの表示文字を変えようとしています。 document.link.textを使用して実現しようとしているのですが、エラーになってしまいます。 何か良い方法はありませんでしょうか。 参考までに、自分の作ったコードを記載します。 <![CDATA[ <script type="text/javascript"> function disp() {  var n = q.getNumber(0);  n.dispNumber(); } function Number(number) {  this.number = number; } Number.prototype.dispNumber = function(){  document.write("<div style=\"position: relative;\">"); d ocument.write("<a href=\"JavaScript:q.checkNumber(" + this.number + ")\">");  document.write("<IMG src=" + this.URL + " width=" + this.size + " height=" + this.size + " name=\"img\" border=\"0\">"); document.write("<div style=\"top:" + this.size / 2 + "px; left:" + this.size / 2 + "px; position:absolute; z-index:2;\" id=\"Layer4\" align=\"center\">");  document.write(this.number);  document.write("</div>");  document.write("</a>");  document.write("</div>"); } Number.prototype.setNumber = function(number){  this.number = number; } function Question() {  this.number = new Array(); } Question.prototype.checkNumber = function(number) {  alert(number + "がクリックされました。");  document.link.text = -100; } Question.prototype.createNumbers = function() {  this.number[0] = new Number(1); } Question.prototype.getNumber = function(i) {  return this.number[i]; } </script> <div id="hoge"> <script language="JavaScript"><!-- var q = new Question; q.createNumbers(); disp(); //--> </script> </div> ]]> よろしくお願いします。

  • ryu-e
  • お礼率72% (202/278)

質問者が選んだベストアンサー

  • ベストアンサー
  • Hardking
  • ベストアンサー率45% (73/160)
回答No.2

とりあえず、document.link.text は構文エラーです。 リンク配列オブジェクトを下記しました。 実際、インデックス記した箇所には、ページ内でのa要素記述順で0から 記されます。 構文 document.links.length document.links[インデックス].プロパティ document.links[インデックス].メソッド プロパティ href protocol hostname pathname port host search target length name メソッド toString valueOf toSource >リンクの表示文字を変えたい 何をどうしたいか、不明ですが document.linksオブジェクト操作で 表示文字を変えろこと出来ません。

ryu-e
質問者

お礼

ありがとうございます。 試してみます。

その他の回答 (1)

  • nine999
  • ベストアンサー率44% (512/1140)
回答No.1

これは、リンクの表示と実際のリンクを違うものにしたいということでしょうか? <a href="URL" onClick="location.href='url'; return false;"> 上記のアンカータグだと、URLではなくurlに飛びます。なのでURLの部分はなんでもありになりますね。

ryu-e
質問者

お礼

ありがとうございます。 試してみます。

関連するQ&A

  • メソッドに自分自身を渡す場合

    連続で質問して申し訳ありません。 メソッドに自分自身を渡す場合がどのように記述すればよいでしょうか。 ソースを以下のように書いていますがうまくいきません。 disp()というメソッドでは、Questionのインスタンスを受け取り処理を行います。 クラスQuestionのメソッドcheckNumber()で、disp()を呼び出し、自分自身を引数として渡しているつもりです。(引数に thisを入れています) Question.prototype.checkNumber = function(number) {  if (number == this.answer)  {   this.ansCount++;  } else {   this.missCount++;  }  disp(this); } 稚拙なプログラムで本当に申し訳ありません。 よろしければお知恵をお貸しください。

  • 選んだ文字列を表示させる方法について

    JavaScriptを使って,ドラッグで選んだ文字列を,同じページ内に,抜き出して表示させることを考えています。 いろいろなページを参考にして,以下のように作ってみましたが,どうもうまく動きません。 具体的には,文字を選ぶと[object]と表示されてしまいます。 アドバイスをお願いします。 <html lang="ja"> <head> <script type="text/javascript"> function doAlert(){ if(document.all){ var s = new String; s=document.selection.createRange(); if (document.all) { his.innerHTML = s; } else if ( document.layers ) { document.his.document.open(); document.his.document.write(s); document.his.document.close(); } }else if(document.getElementById){ s=window.getSelection(); document.write(s); } } document.onmouseup=doAlert; </script> </head> <body> <div id="div1" style="font-size:24pt"> 選択してください。 </div> <hr> <DIV id="his" style="position: absolute;"> <P>上の文をドラッグすると,ここに選んだ文字列が表示されます</P> <hr> </DIV> </body> </html>

  • ownerDocumentの使い方を知りたいです。

    javascriptの.ownerDocumentの使い方を知りたいです。 https://developer.mozilla.org/ja/DOM/element.ownerDocument のサイトを参考に実際にいろいろ試してみました。 ーーーーーーーーーーーーーーーーーーーーー <script type="text/javascript"> function test1() { var a = 123; var b = a.ownerDocument; document.write(b); } </script> <div> <span onclick="test1()">テスト</span> </div> ーーーーーーーーーーーーーーーーーーーーー <script type="text/javascript"> function test2() { var a = this.ownerDocument; document.write(a); } </script> <div> <span onclick="test2()">テスト</span> </div> ーーーーーーーーーーーーーーーーーーーーー <script type="text/javascript"> function test3() { var a = this; var b = a.ownerDocument; document.write(b); } </script> <div> <span onclick="test3()">テスト</span> </div> ーーーーーーーーーーーーーーーーーーーーー 全てundefinedとなり、そのまま固まってしまいます。 .ownerDocumentはどのように使うのでしょうか。 アドバイスをよろしくお願いします。

  • js プロトタイプ

    javascriptソースコード <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <title>サンプル</title> </head> <body> <script type="text/javascript" src="jquery-1.7.2.min.js"></script> <script src="fastclick.js"></script> <script> function print(str){ document.write(str + "<br />"); } function Car(manufact, name){ this.manufact = manufact; this.name = name; } Car.prototype.info = function(){return this.manufact + " " + this.name;}; document.write("<p>"); var car1 = new Car("Toyota", "PRIUS"); print(car1.info()); var car2 = new Car("Honda", "INSIGHT"); print(car2.info()); document.write("</p>"); </script> </body> </html> 23行目なのですが「 Car.prototype.info 」とありますがjsにおいてプロトタイプはオブジェクトだという事は認識しておりますがプロトタイプを宣言する意味は何があるのでしょうか? 参考urlです。 http://www.ajaxtower.jp/js/function_class/index3.html

  • 文字を一文字ずつ表示

    JavaScriptで文字を一文字ずつ表示するサンプルを見つけ、使おうとしたところdocument.allが使われていた為、ネスケで対応できない事が分かりました。ネスケ4.7で対応するようにするにはどのように変えたらいいのか教えて頂きたく宜しくお願いいたします。 <SCRIPT Language="JavaScript"> <!-- var msg="Welcome!!"; i=0; function Start(){ if(i<=msg.length){ if(document.all){ myText.innerHTML = msg.substring(0,i); }else if(document.layers){ document.myText.document.open(); document.myText.document.write(msg.substring(0,i)); document.myText.document.close(); } i=++i; setTimeout("Start()",200); }else{ i=0; setTimeout("Start()",1000); } } // --> </SCRIPT> </HEAD> <BODY onLoad="Start()"> <DIV id="myText"></DIV> </BODY> 宜しくお願い致します。

  • JavascriptでInputClassの表示を変えるには

     以下のScriptを作りました。Tagの表示情報をScriptで変更したいのです。以下のdiv class="inC1"は変更されます。input class="inIPC2も変更したいのですが、どうもやり方が異なるようです。  申し訳ありませんがご教授願います。 <html> <head> <title>エレメントの表示</title> </head> <body> <script type="text/javascript"> function Disp_change() { var i = 0, div = document.getElementsByTagName("DIV"); while (div[i]) { if (div[i].className=="inC1") div[i].innerHTML = "change1"; i++; } } function Disp_change_Class() { var i = 0, div = document.getElementsByTagName("DIV"); while (div[i]) { if (div[i].className=="inIPC2") div[i].innerHTML = "change2"; i++; alert ("change2"); } } </script> <body> <div class="frameHead frameDetail"> <div class="inC1">連絡情報</div> <div class="clear"><hr /></div> <div class="inC2"> <input class="button3" type="button" name="fromUserList" value="" onclick="Disp_change()"> <input class="inIPC2">連絡情報</div> </div> <script type="text/javascript"> Disp_change(); Disp_change_Class(); }; </script> </script> </body> </html>  一応動きますので確認してみてくだされば幸いです。 以上、宜しく御願い致します。

    • ベストアンサー
    • Java
  • CSSのID名に配列を使えませんか?

    以下のようなソースで、項目ごとにサブメニューの開閉をしようとしているのですが、サンプルの#a1~に該当するID名を、配列として定義することってできませんか? <style type="text/css"><!-- #a1 { display:none; } #a2 { display:none; } #a3 { display:none; } // --></style> <script type="text/javascript"><!-- function disp(aaa) { obj = document.getElementById(aaa); if( obj.style.display =="block" ){ obj.style.display ="none"; }else{ obj.style.display ="block"; } } function create(bbb){ document.write(bbb); } // --></script> <body> ああああ<a href="javascript:void(disp('a1'))">◎</a><div id="a1"><script type="text/javascript">create("アアアア");</script></div><br> いいいい<a href="javascript:void(disp('a2'))">◎</a><div id="a2"><script type="text/javascript">create("イイイイ");</script></div><br> うううう<a href="javascript:void(disp('a3'))">◎</a><div id="a3"><script type="text/javascript">create("ウウウウ");</script></div><br>

  • javascriptでの表示について

    他のページの<div><ul></ul></div>の間の文字を拾ってくるjavascriptがあります。 【ベースページ】 <script type="text/javascript"> $(function(){ $("#test").load("https://hoge.ne.jp/read.php#test ul", function(data) { if(data == null){ $("#test").append("読込みに失敗しました"); } }); }); </script> 【読み込みページ】 read.php <div id="test"><ul> テストです </ul></div> 【ベースページ】に <div id="test"></div> と記載すると、読み込みページの<div><ul></ul></div>の間の文字「テストです」を拾ってきます。 これをjavascript内で表示したいと思います。 <script> document.write( document.getElementById('read77') ); </script> では表示されません。 どのように書けば表示されますでしょうか?

  • javascriptで文字を移動後、プルダウン表示させたい。

    (1)移動処理 http://www.openspc2.org/JavaScript/Ajax/Effect/Rico/002/index.html (2)上から内容を表示 http://www.openspc2.org/JavaScript/Ajax/Effect/script.aculo.us/004/index.html (1)→(2)の処理の順番動かそうと思い、javascriptを組んでみたのですが、動きません。 new Rico.Effect.Position("movilisez", 400,300, 100, 20);を コメントアウトすると、(2)の処理は動いてくれますが、 コメントを外すと動きません。 原因を教えていただけますでしょうか? 環境は以下です。 OS:VISTAHomepremium ブラウザ:IE7 --------------------- function toPoint() { new Rico.Effect.Position("movilisez", 400,300, 100, 20); execEffect(); } function execEffect() { document.getElementById("contents").style.visibility = "visible" new Effect.BlindDown($("contents")); } --------------------- --------------------- <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link href="Style_Index.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="scripts/prototype-1.6.0.3.js"></script> <script type="text/javascript" src="scripts/scriptaculous-js-1.8.2/src/scriptaculous.js?load=effects"></script> <script type="text/javascript" src="scripts/rico.js"></script> <script type="text/javascript" src="scripts/BlindDown.js"></script> <title>TestPage</title> </head> <body> <div align="center"> <p></p><div id="Hedder" align="center"><table width="800px" cellspacing="0"> <tr> <td colspan="2" rowspan="2" align="left"><img src="" alt="" name="movilisez" width="200" height="80" id="movilisez" onclick="toPoint()" /></td> </tr> </table></div> <div id="contents"> <div id="menu" align="center"> メニュー </div> </div> </div> </body> </html>

  • Ajaxで文字化けしてしまいます

    IE6を使用しています。 UTF-8のBOMありで以下のコードを保存しています。 sample.txtに入っている「あああ」を出力すると 文字化けしてしまいます。 <script src="prototype.js" type="text/javascript"></script> を <script src="prototype.js" type="text/javascript" charset="utf-8"></script> で試しても同じ結果でした。 何が原因なのでしょうか? <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"> <title>prototype.jsサンプル</title> <script src="prototype.js" type="text/javascript"></script> <script type="text/javascript"><!-- function readText() { var sURL = "sample.txt?cache="+(new Date()).getTime(); new Ajax.Updater("result",sURL, { method: "get" }); } // --></script> </head> <body> <h1>prototype.jsサンプル</h1> <form method="get" name="ajaxForm" onsubmit="readText();return false;"> <input type="submit" value="sample.txtを読み込み"><br> </form> <div id="result"></div> </body> </html>

専門家に質問してみよう