• ベストアンサー

ポップアップウインドウを開いたら、リンクを訪問済色にしたい

現在、画像をJavaScriptでポップアップ表示させてます。 具体的には、以下のようにやってます。 <a href="./hana.jpg" onclick="window.open('hana.jpg','TITLE');return false">***</a> リンクを開いたら、そのリンクを訪問済色にしたいのですが、上記のやり方では、未訪問色のままです。 (履歴に残らないので当たり前ですが) href="#" にすると、最初から訪問済色となってしまいます。 クッキーを使って、開いた画像を履歴にしようかと思いましたが、手間ですし、大げさかと思いました。 何か良い方法がありましたらご教授下さい。 【参考:過去の質問】 http://okweb.jp/kotaeru.php3?q=983997

  • Javac
  • お礼率52% (13/25)

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

  • ベストアンサー
  • leaz024
  • ベストアンサー率75% (398/526)
回答No.2

onclick の中で return false をするとクリックが無効化され、A タグのジャンプ動作がキャンセルされます。 クリックされなかったことになるのですから、その場で訪問済色に変わることはありません。 しかし、その画像にはアクセスしているので履歴には残り、次回アクセス時には訪問済色に変わっているはずです。 ところが、そのライブラリ(openex.js)を使って画像サイズ自動調整オプション(image=1)を指定すると、ブラウザが画像に直接アクセスするのではなく、開いたウィンドウ内のJavaScriptで動的に読み出すようになるため、その画像が履歴に残らないようなのです。 ※IE以外のブラウザについては調べていません。 onclick では return false せざるを得ないので、href の方で直接JavaScriptを起動するようにします。 ※return false しないとどうなるかは試してみてください。 <a href="javascript:void(window.open('hana.jpg','TITLE','image=1'))">***</a> ただし、この方法では訪問済色には変わりますが、JavaScriptがオフになっているとリンクが全く機能しませんので、アクセシビリティを意識するなら使わない方がよいでしょう。

その他の回答 (1)

  • ryou0607
  • ベストアンサー率27% (71/261)
回答No.1

特にパラメータを指定していないようなので、 <a href="./hana.jpg" target="TITLE">***</a> でできると思います。

関連するQ&A

  • リンク先をジャバスクリプトで別ウィンドウで見せるとき他のリンクの色も変わってしまう II

    リンク先を別ウィンドウで飛ばすため、同じページにある他のリンクも <a href="#">AAAA</a>(これはポインタを手のマークに変えてリンクをわかり易くするためです) <a href="#">BBBB</a> のように指定していますが、これだと一度クリックしてしまうと 全てのリンクが訪問後の色に変わってしまいます。 この問題はどう改善できるのでしょうか? 前回質問のアドバイスを元に記述してみたのですが↓ <a href="javascript:function void(0)" onClick="window.open('../htm/1.htm','','scrollbars=yes,width=700,height=700')">1234</a> <a href="javascript:function void(0)" onClick="window.open('../htm/2.htm','','scrollbars=yes,width=700,height=700')">5678</a> やはりクリックしてみるとリンク全てが訪問後の色に変わってしまいました、

  • リンクにおける挙動の参照と範囲指定

    ほぼ初心者です。 html内に、javascriptを参照させて、以下のように作成しました。 <SCRIPT language="javascript"src="popup.js"></script> <□□> <a href="1.jpg" onclick="popup(href);return false;">テスト1</a> <a href="2.jpg" onclick="popup(href);return false;">テスト2</a> <a href="3.jpg" onclick="popup(href);return false;">テスト3</a> </□□> 普通にポップアップされたのですが、以下の方法ができないかと思っております。 (1)「onclick="popup(href);return false;"」の部分をほかから参照させる (2)特定の範囲のリンクのみ「onclick="popup(href);return false;"」を適用させる。 (1)はLightboxのように、「rel="thumbnail"」みたいに参照できないか、ということです。 (2)は上の「<□□>~</□□>」のように囲われた範囲のリンクで、「onclick="popup(href);return false;"」を適用できないか、ということです。 よろしくお願いします。

  • googleMapAPIの吹き出しリンクからポップアップしたい

    こんにちは、 今google Map API version2でページを作成しています。 地図の吹き出しの中にはhtmlのソースが使えるのですが、そのリンクをクリックしたときに別ウィンドウをポップアップさせる方法(サイズを固定してポップする方法)はありますか? ちなみに <div><a href="./hogehoge.html" Target="_blank" >リンク</a></div> はうまくいくのですが、これだとサイズ固定でなく、ポップアップされません。 下記の <div><a href="#" onclick="window.open(\'./hogehoge.html\',\'moviewin\',\'width=500,height=320\');">リンク</a></div> だと、javascriptの中から読んでるからだと思いますが、うまくいきません。 解決法を知っている方、 是非とも宜しく尾根会いいたします。

    • ベストアンサー
    • AJAX
  • ランダムバナーのリンク先をポップアップウィンドウで開きたい。

    ランダムバナーのリンク先をポップアップウィンドウで開きたい。 当方javascript初心者なのですが、色々なサイトを参考にして上記の方法を模索しています。 以下に記載する内容で画像をランダムに表示するところまで出来たのですが、 画像をクリックすると通常通り、リンク先に飛ぶだけでポップアップウィンドウが開きません。 この記述の間違い点、問題点をご指摘、助言をいただきたく思います。 よろしくお願いたします。 以下js記述↓ <SCRIPT language="JavaScript"> <!-- jmp = new Array(); img = new Array(); // ジャンプ先のアドレス(数字は画像と対応) jmp[0] = "http://www.yahoo.co.jp/"; jmp[1] = "http://google.com/"; jmp[2] = "http://www.microsoft.com/"; img[0] = "banner1.jpg"; img[1] = "banner2.jpg"; img[2] = "banner3.jpg"; n = Math.floor(Math.random()*jmp.length); document.write("<a href='"+jmp[n]+"' onClick='javascript:window.open('"+jmp[n]+"','','width=600'); return false;'>"); document.write("<img src='"+img[n]+"' border='0' width='100' height='100' />"); document.write("</a>"); //--> </SCRIPT>

  • ポップアップウィンドウでswfをリピートしない

    リンク元ページから、ポップアップウィンドウが開きswfを表示します。 ポップアップウィンドウはJavaScriptでウィンドウサイズを指定して開きます。 <a href="#" onclick="window.open('swf/aaa.swf','popup1','width=400,height=300');">ポップアップ </a> ポップアップウィンドウで表示させるswfをリピートなしにしたいです。 よろしくお願いします。

  • ポップアップウィンドウでswfをリピートしない

    HTML のほうで質問させていただいたのですが、思った回答が得られなかったのでこちらで質問させていただきます。(場違いだったのかも・・) リンク元ページから、ポップアップウィンドウが開きswfを表示します。 ポップアップウィンドウはJavaScriptでウィンドウサイズを指定して開きます。 <a href="#" onclick="window.open('swf/aaa.swf','popup1','width=400,height=300');">ポップアップ </a> ポップアップウィンドウで表示させるswfをリピートなしにしたいです。 よろしくお願いします。 *swfはFlashではなく、mpegをコンバータにてswfにしたものです。

  • javascriptでのポップアップウィンドウが開かなくて困っています><

    初歩的な質問ですいません。 <script language="JavaScript"> <!-- function OpenWin(){ win=window.open("sample.html","new","width=100,height=100"); } //--> </script> <a href="javascript:OpenWin()"><img src="img/1.jpg" width="60" height="60" onClick="MM_openBrWindow('sample.html','sample','scrollbars=yes,width=460,height=460')" border="0"></a> 上のスクリプトで下のリンクで開こうとする時に、 どうしても開けません。>< どうしてなのでしょうか!? どこかが間違えているのでしょうか!? 誰か助けていただけませんでしょうか;><;;

  • ポップアップから親ウィンドウへリンクを飛ばす方法

    ポップアップしたページに、Flashが埋め込まれている状態で、そのFlash内のボタンをクリックしたら親Windowのページが切り替わるようにしたいのですが、可能でしょうか。 【親:index.html】 <SCRIPT language="JavaScript"> function popup_modeless(url){ var newWin = window.open(url,"pop","width=800, height=480"); newWin.focus(); } </SCRIPT> <a href="" onClick="popup_modeless('pop.html')">開く</a> 【子:pop.html内のFlash】 リンク用のMCを貼り付け、そこに以下のスクリプト on(release){ getURL("jump.html","pop"); } では子window内に表示してしまいました。 ヘルプを見ると、getURLのwindowオプションには任意の名前は認められていないようで、_self,_blank,_parent,_topしか記述されていませんでした。 _parentでも同様に子window内での表示になりました。 Flash内から親Windowに表示させるにはどうすればいいのでしょうか。 よろしくお願いいたします。 ※ActionScript2.0、CS3です。

    • ベストアンサー
    • Flash
  • ポップアップウィンドウが出来ないです

    ポップアップウィンドウをつくりたいのですが、 head内に <script type="text/javascript"> function openWin(theURI) { PopUpWin=window.open(theURI,'theWin','scrollbars=0, width=250,height=320,resizable=1,directories=0, toolbar=0,status=1,location=0'); PopUpWin.focus(); } </script> と書いて body内に <a onclick="openWin('bgm.html');return false;" onkeypress="openWin('bgm.html');return false;"> と書きました 初心者がどうにか書いたものなので、全体的に間違っているかも知れないですが、どこを直せばいいか教えてください (サーバの都合で現在アップデートできないので、オフラインで動作確認しましたがポップアップしません。 オフラインでは動作しないのですか?)

  • リンクで画像を置き換えたい

    初心者ですが、よろしくお願いします。 たとえば 001.jpg 002.jpg 003.jpg という3つの画像ファイルがある場合に、 ---------------------------------- <html> <body> ~省略~ <a href = "#" onclick = "change_img(1)">画像1</a> <a href = "#" onclick = "change_img(2)">画像2</a> <a href = "#" onclick = "change_img(3)">画像3</a> <img src = "XXX.JPG> </body> </html> ---------------------------------- のような感じで画像1,2,3のリンクをクリックすることで、 ページ切り替えるのではなく、 XXX.JPGの部分のみ切り替えるscriptを考えているのですが、 ご教授願いないでしょうか? 要望としては、切替候補の複数の画像は ページをロードしたときに最初に全て読み込んでおいて、 リンククリック時の画像の切替をスピーディにしたいと考えています。 サンプルの上記例にそくしたサンプルのコードなどを 回答いただけると助かります。 よろしくお願いいたします。

専門家に質問してみよう