こんにちは。
今、会社のHPを作っているのですが、リンクのターゲットを変えるにはどうしたらよいでしょうか。出来れば、早急に、ご回答お願いします。

A 回答 (3件)

あまり使わない?方法ですね。

よく使うのは

<a herf="#" onClick="jmpURL(1)">カツ丼</a>
<a herf="#" onClick="jmpURL(2)">天丼</a>

としてリンクを張ってスクリプトを呼び出しスクリプトの引数で
function cl(id)
{
id = id + '.htm';
window.location.href=id;
window.location.target=frame3;
}
の部分を
function jmpURL(id)
{
if id == 1 then
window.location.href=カツ丼飛び先URL;
window.location.target=カツ丼表示フレーム名;
else ・・・
idが1の処理。1の時と同様に・・
}

のような方法です。
手元にリファレンスが無いので、詳しく書けませんが、だいたいこんな感じです。引数をもっと上手に使えば、もう少しは美しいスクリプトになると思います。
    • good
    • 1

どのようなタイミングでターゲットを変える必要が有るのでしょうか?


もう少し具体的仕様を書いた方が回答しやすいと思います。

この回答への補足

JavaScriptの内容です。
<STYLE TYPE="text/css">

<!--
DIV.dummy {position:absolute;backgroundcolor:white;
width:100%;}
DIV.logo {position:absolute;top:0;align:center;}
DIV.menu {position:absolute;top:0;left:0;height:23;
background-color:#0077DD;}
TD.menu {color:white;background-color:#0077DD;
font-weight:bold;font-size:12pt;cursor:hand;}
DIV.sub {position:absolute;top:27;width:362;background-color:#0077DD;color:white;font-size:12pt;font-weight:bold;display:none;}
SPAN.menu {cursor:hand;}
-->
</STYLE>
<SCRIPT language="JavaScript">
<!--
           ---中略---
function cl(id)
{
id = id + '.htm';
window.location.href=id;
window.location.target=frame3;
}
//-->
</SCRIPT>

<DIV CLASS="menu" ID="menu">

<TABLE BORDER=0 CELLPADDING=2 CELLPACING=0>
<TR>
<TD CLASS="menu" ID="m1" onMouseover="ov(id)" onMouseout="ot(id)">自動車関係ゴム産業機械</TD>
<TD CLASS="menu" ID="m1s">|</TD>
<TD CLASS="menu" ID="m2" onMouseover="ov(id)" onMouseout="ot(id)">自動組立機械</TD>
<TD CLASS="menu" ID="m2s">|</TD>
<TD CLASS="menu" ID="m3" onMouseover="ov(id)" onMouseout="ot(id)">巻線機</TD>
<TD CLASS="menu" ID="m3s">|</TD>
<TD CLASS="menu" ID="m4" onMouseover="ov(id)" onMouseout="ot(id)">自動供給装置</TD>
<TD CLASS="menu" ID="m4s">|</TD>
<TD CLASS="menu" ID="m5" onMouseover="ov(id)" onMouseout="ot(id)">産業用ロボット</TD>
<TD CLASS="menu" ID="m5s">|</TD>
<TD CLASS="menu" ID="m6" onMouseover="ov(id)" onMouseout="ot(id)">ガラス磨き機</TD>
</TR>
</TABLE>

</DIV>

<DIV ID="s1" CLASS="sub" onMouseout="hide()">
<SPAN ID="s11" CLASS="menu" onMouseover="ov(id)" onMouseout="ot(id)" onClick="cl(id)">なまえ<br></SPAN>
</DIV>

このように、<a href=""というようにリンクするのではなく、CSSと合わせて、<SPAN>でリンクするのです。

補足日時:2001/01/20 12:06
    • good
    • 0

まずは


http://oshiete1.goo.ne.jp/kotaeru.php3?q=27468
がヒントとなります。
<a href="*****.html" target="$$$$$"> など

全体のデフォルトターゲットを設定するときなどは、
<base target="$$$$$">などです。

※ targetには"_self"や"_blank"や対象フレームの名前など。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q数秒ごとに画像を変え、リンクをさせ、かつターゲット指定も

検索で以下を発見し、数秒間隔で違う画像を表示かつリンクをはる。
というやり方はわかったのですが
http://oshiete1.goo.ne.jp/kotaeru.php3?q=176758
これの、リンクのターゲット指定を
画像ごとに変える事はできるのでしょうか。
フレーム内なので、ある物は全画面表示。
ある物はフレーム内に。というふうにしたいのですが・・・

Aベストアンサー

こんな形でしょうか?

<html>
<head>
<script type="text/javascript"><!--
banners= new Array();

banners[0]="***1.gif";
banners[1]="***2.gif";
banners[2]="***3.gif";
banners[3]="***4.gif";
/* 以上にバナーのURLを定義 */

link= new Array();

link[0]="***1.htm<>_self";
link[1]="***2.htm<>_top";
link[2]="***3.htm<>_blank";
link[3]="***4.htm<>_self";
/* "移動先のページのURL<>指定するターゲット"という書式で、リンク先の値を定義 (上の例の_selfは同じウィンドウ(orフレーム)、_topはフレーム解除、_blankは常に新しいウィンドウで開く指定。 任意のフレームを指定する時は、この部分にフレーム名を記入) */

for (i=0; i<banners.length; i++){
tmpSrc=banners[i];
banners[i]=new Image();
banners[i].src=tmpSrc;
}
/* バナー画像をImageオブジェクトとして再定義 */

n=-1;

function bannerChange(){ // バナーとリンク先を切り替える関数
n++;
if (n==banners.length){ n=0;}
document.ban1.src=banners[n].src; // バナー画像を変更
document.ban1.width=banners[n].width; // バナー画像の横幅を画像ファイルに合わせて変更(削除可)
document.ban1.height=banners[n].height; // バナー画像の縦幅を画像ファイルに合わせて変更(削除可)
if (document.getElementById){ // リンクを書き換える(IE5以降、Netscape6以降などDOM対応ブラウザ向け)
tmpLink=link[n].split("<>")
document.getElementById("link1").href=tmpLink[0]; // a要素id「link1」のhrefを変更
document.getElementById("link1").target=tmpLink[1]; // a要素id「link1」のtargetを変更
}
setTimeout("bannerChange()",5000);
}

function jump(){ // DOM非対応ブラウザ向けのページ移動のための関数
tmpJmp=link[n].split("<>");
window.open(tmpJmp[0],tmpJmp[1]);
}

window.onload=bannerChange;
// --></script>
</head>
<body>

<a href="#" id="link1" onClick="if(!document.getElementById){jump(); return false;}"><img src="***1.gif" name="ban1" alt="バナー"></a>

</body>
</html>

参考になれば…

こんな形でしょうか?

<html>
<head>
<script type="text/javascript"><!--
banners= new Array();

banners[0]="***1.gif";
banners[1]="***2.gif";
banners[2]="***3.gif";
banners[3]="***4.gif";
/* 以上にバナーのURLを定義 */

link= new Array();

link[0]="***1.htm<>_self";
link[1]="***2.htm<>_top";
link[2]="***3.htm<>_blank";
link[3]="***4.htm<>_self";
/* "移動先のページのURL<>指定するターゲット"という書式で、リンク先の値を定義 (上の例の_selfは同じウィンドウ(orフ...続きを読む

QHTMLフォームボタンによるターゲットフレームを指定したリンク

上下にフレーム分割してあり、上をname="header",下をname="contents"としてあります。


head側のHTMLに記述したフォームボタンを押すと、親ウインドウ(target="_parent")に
リンク指定先が展開されるようにしたいのですが下記の記述ではうまくいきません。
意図した親ウィンドウでなく、head側のフレーム内に展開されてしまいます。

<input type="button" name="01a" value="前へ" onclick="parent.head.location.href='../hoge1/1.htm'">
<input type="button" name="03a" value="目次" onclick="parent.head.location.href='../index.html'">
<input type="button" name="03a" value="次へ" onclick="parent.head.location.href='../hoge3/3.htm'">

参考にしたのは以下ですが、何が誤っておりますでしょうか。よろしくお願い致します。
http://www.west-mira.jp/javascript/link/button2.html

上下にフレーム分割してあり、上をname="header",下をname="contents"としてあります。


head側のHTMLに記述したフォームボタンを押すと、親ウインドウ(target="_parent")に
リンク指定先が展開されるようにしたいのですが下記の記述ではうまくいきません。
意図した親ウィンドウでなく、head側のフレーム内に展開されてしまいます。

<input type="button" name="01a" value="前へ" onclick="parent.head.location.href='../hoge1/1.htm'">
<input type="button" name="03a" value="目次" onclick="pa...続きを読む

Aベストアンサー

おそらく次のような構成になっているのかと思います。
<frameset>
<frame name="header">
<frame name="contents">
</frameset>
このとき、
headerから、ひとつ上の親にリンクを展開しようとすると、つまりフレーム構成がはずれる、ということですよね?

でしたら、
parent.location.href="URL"
が正しい記述です。
parent.(フレーム名).location.href="URL"
ですから、親ウインドウを基準にして
指定したheadフレームにリンクを展開していることになります。

Qリンクをクリックすると親ウィンドーにiframe構造のページが開き、さらにターゲットへジャンプする方法はありますでしょうか?

以前質問させてヒントをいただいたのですが、結局解決できなかったのでもう一度お願いします。

例えば、index.htmlを下記の通りとします。

--iframe----HTML-----
|       |        |
| menu  |        |
----------------------

左のmenuをクリックすると、iframeで作った別のページが開き、さらにその中のページのターゲット内に移動したいのです。

index.htmlのmenuをクリック→anotherpage.htmlへ移動

--iframe----iframe-----
|       |main.html   |
| menu   |        |
----------------------
さらに、右iframe内はmain.html内のターゲットAへジャンプ。


このようなジャンプがJavaScriptで可能だと教えていただきましたが、どのようにするのか解りませんでした。
そのプログラムや、それ以外の簡単な方法がありましたら、教えて下さい。

よろしくお願いします。

以前質問させてヒントをいただいたのですが、結局解決できなかったのでもう一度お願いします。

例えば、index.htmlを下記の通りとします。

--iframe----HTML-----
|       |        |
| menu  |        |
----------------------

左のmenuをクリックすると、iframeで作った別のページが開き、さらにその中のページのターゲット内に移動したいのです。

index.htmlのmenuをクリック→anotherpage.htmlへ移動

--iframe----iframe-----
|       |main.html   |...続きを読む

Aベストアンサー

下記ファイル参照

index.htmlのmenuをクリックすると、
普通にanotherpage.htmlへ移動して、
そのanotherpage.htmlにmain.htmlを入れ込んだiframeが有り
ここまではいいね、
そのmain.htmlの中のAの所へジャンプ又はスクロールする。

main.htmlファイルの内容
<HTML>
<HEAD>
<script src="toScroll.js"></script>
</HEAD>
<BODY bgcolor="#333333" text="#ffffff" link="#ffffff" alink="#ff0000" vlink="#ffff00" a href="#a1" onload="toScroll('a1');return false;" >

<A name="top" id="top">TOP</A><br>
main.html<br>
<A href="#a1" onclick="toScroll('a1');return false;" onkeypress="toScroll('a1');return false;"><FONT size="2"><b>Aへ</FONT></b></A><br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<A name="a1" id="a1">A</A><br>
main.html<br>
<A href="sub.html"><FONT size="2"><b>subへ</FONT></b></A><br>
<A href="#top" onclick="toScroll(); return false;">TOPへ</A>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<A name="end" id="end">END</A>
</BODY>
</HTML>

toScroll.jsファイルの内容
//http://oshiete1.goo.ne.jp/kotaeru.php3?q=1556067

nowTop=0;
function toScroll(AnchorID){
if(this){
nowTop=document.body.scrollTop;
if(AnchorID){
pageScroll(OffsetTop(AnchorID));
}else{
pageScroll(0);
}
}
}
pageScrollTimer="";
beforTop=0;
function pageScroll(DestinationTop){
nowTop+=Math.floor((DestinationTop-document.body.scrollTop)/35);
window.scrollTo(0,nowTop);
if((DestinationTop==document.body.scrollTop) || (beforTop==document.body.scrollTop)) {
clearTimeout(pageScrollTimer);
}else{
beforTop=document.body.scrollTop;
pageScrollTimer = setTimeout("pageScroll("+DestinationTop+")",20);
}
}
function OffsetTop(i){
var e=document.getElementById(i);
if(e.offsetParent.tagName.toLowerCase()=="body")
return e.offsetTop;
else
return OffsetTopL(e);
}
function OffsetTopL(e){
if(e.offsetParent.tagName.toLowerCase()=="body")
return e.offsetTop;
else
return e.offsetTop+OffsetTopL(e.offsetParent);
}

下記ファイル参照

index.htmlのmenuをクリックすると、
普通にanotherpage.htmlへ移動して、
そのanotherpage.htmlにmain.htmlを入れ込んだiframeが有り
ここまではいいね、
そのmain.htmlの中のAの所へジャンプ又はスクロールする。

main.htmlファイルの内容
<HTML>
<HEAD>
<script src="toScroll.js"></script>
</HEAD>
<BODY bgcolor="#333333" text="#ffffff" link="#ffffff" alink="#ff0000" vlink="#ffff00" a href="#a1" onload="toScroll('a1');return false;" >

<A name="top" id="top...続きを読む

Qhtml javascript リンク先アドレスの中に当日日付を取得したい。 こんにちは。 java

html javascript
リンク先アドレスの中に当日日付を取得したい。


こんにちは。
javascriptに関しては超初心者です…

現在
<a href=”http://〜/schedule/index?&bdate=2017-01-12〜>
<font 〜>★</font></a>

★をクリックしたら
システムのスケジュール画面に飛んで
当日から一週間表示される仕組みなんですが、
一週間表示は大元がそうなっているようなので、
当日の日付が表示されるように埋め込めばうまくいくかと思ってますが、
当日を自動的に取得する方法が分からず、
毎朝手動で日付を変えている状態です。

他の投稿のベストアンサーを参考に
以下のようにしましたがうまくいきません。

<DOCTYPE HTML PUBLIC〜>
<meta http〜>



<script type=text/javascript>
<!--
today=new Date();
year=' ' +today.getFullYear();
month=' ' +today.getMonth()+1);
if(month < 10){ month = '0' +month; }
day =' '+today.getDate();
if(day < 10) { day = '0' +day; }
-->
document.write('<a href=”http://〜/schedule/index?&bdate='year+month+day'〜>')
<font 〜>★</font></a>
</script>

どうかご指摘いただけたら嬉しいです。
宜しくお願いします。

html javascript
リンク先アドレスの中に当日日付を取得したい。


こんにちは。
javascriptに関しては超初心者です…

現在
<a href=”http://〜/schedule/index?&bdate=2017-01-12〜>
<font 〜>★</font></a>

★をクリックしたら
システムのスケジュール画面に飛んで
当日から一週間表示される仕組みなんですが、
一週間表示は大元がそうなっているようなので、
当日の日付が表示されるように埋め込めばうまくいくかと思ってますが、
当日を自動的に取得する方法が分からず、
毎朝手動で日付を変えている状態です。...続きを読む

Aベストアンサー

ちゃんとやるなら、以下のような形が望ましいです

<script>
document.addEventListener('DOMContentLoaded', function(){
function replaceTodayURL(anchor) {
var url = anchor.href;
var re = /@today-yyyy-mm-dd@/;
if (!re.test(url)) return;
var p = function(n,v){return (new Array(n+1).join('0')+v).substr(-n)};
var t = new Date();
var s = p(4, t.getFullYear()) + '-' + p(2, t.getMonth()+1) + '-' + p(2, t.getDate());
anchor.href = url.replace(re, s);
}
var a = document.querySelectorAll('a[href]');
for (var i = 0; i < a.length; i++) replaceTodayURL(a[i]);
}, false);
</script>

<a href="/schedule/index?bdate=@today-yyyy-mm-dd@">★</a>

ちゃんとやるなら、以下のような形が望ましいです

<script>
document.addEventListener('DOMContentLoaded', function(){
function replaceTodayURL(anchor) {
var url = anchor.href;
var re = /@today-yyyy-mm-dd@/;
if (!re.test(url)) return;
var p = function(n,v){return (new Array(n+1).join('0')+v).substr(-n)};
var t = new Date();
var s = p(4, t.getFullYear()) + '-' + p(2, t.getMonth()+1) + '-' + p(2, t.getDate());
anchor.href = url.replace(re, s);
}
var a = document.querySelectorAll...続きを読む

Q「インラインフレームにリンク」と「ページトップへのリンク」の2つのリンク要素をもたしたいのですが…

ページの上部に、インラインフレームでバックナンバーを表示させているページを作っています。そのページをずっとスクロールした下の方で、そのバックナンバーをインラインフレーム内で表示するリンクをはったのですが…問題が。。
インラインフレーム内はちゃんと、リンクしたページにジャンプしているのですが、リンクを張ったところがページの下の方なので、自分でページの上部に移動しなくてはかわったかどうか気づけないんです。。

インラインフレームへのターゲット指定でのリンクとページトップへの移動、、この二つを一緒にできないでしょうか?

Aベストアンサー

>>ANo.2の
>くっつければいいとおもうよ

><a hrref="1" a hrref="2">
じゃなく「<a href="00.html#top">」のように。


>javascriptのtop移動を置いてみたら、なぜか別ウインドウでインラインフレームに入れる要素のhtmlが開いたり、、。インラインフレームにリンクしてるとjavascriptのclass指定は効かないんですかね?

は、どんな処理を入れているのか不明の為、詳細はわかりませんが、JavaScriptでclass指定は効きますよ。
たぶん、JavaScriptが正しくないかと。


人気Q&Aランキング

おすすめ情報