• 締切済み

javascriptの勉強中しはじめたばかりでわからないとこがあったの

javascriptの勉強中しはじめたばかりでわからないとこがあったのでご教授ください。 まずあるホームページA(URL:http://192.168.1.110)からホームページBに飛びます。 ホームページBにはimgがあり、そのimg(飛び先URL:http://192.168.1.111)を押すとクリックURLにリファラ(ホームページAのURL)を付与(例:http://192.168.1.111?ref=http://192.168.1.110)して、 次のページへいくのにはどのようにすればいいか教えてください。 よろしくお願いします。

  • bats2
  • お礼率57% (4/7)

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.4

リファラを別のページにパラメータとしてわたすということは サーバー側でパラメータを利用することを想定していますよね? で、あればリファラをセッションで次のページに渡してやるのが妥当でしょう。 なおjavascriptでわたすならencodeURIComponent()などでurl用のエンコードを かけてやらないと思った通りにデータがとおらないかもしれませんね

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.3

失礼、imgの飛び先はホームページBじゃないんですね。  function urlset(e){   var target = e?e.target:event.srcElement;   if(target.id == "http://192.168.1.111/"){   var url="";   target.parentNode.href=encodeURI(url+"?ref="+document.referrer);   }  } ですね、それと<a>は↓みたくしておきます。 <a href="javascript:Void(0);"><img id="hoge" src="hoge.img" alt="hogeへリンク"></a>

bats2
質問者

補足

返答ありがとうございます。 よかったらですが、外部javascriptの書き方も是非教えていただきたいです。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

いつも、ホームページAから飛んでくると限らないなら、 javascriptを使って <script type="text/javascript">  if('undefined' != typeof document.addEventListener)   document.addEventListener('click',function(event){urlset(event);},false);  else if('undefined' != typeof document.attachEvent)   document.attachEvent('onclick',function(event){urlset(event);});  function urlset(e){   var target = e?e.target:event.srcElement;   if(target.id == "hoge"){   target.parentNode.href=encodeURI(location.href+"?ref="+document.referrer);   }  } </script> でどうでしょうか (全角空白は半角空白にしてください)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

javascriptを使用しなくても  <a href="ttp://192.168.1.111?ref=ttp://192.168.1.110"><img src="○○" alt="××"></a> みたいにしておくことでもいけるのでは? HTMLのhref記述は通常のままでjavascriptで処理をするのなら、 ページ全体のクリックを監視して、対象とするリンク要素だったらクエリ部分を追加してジャンプする。 あるいは、 ページロード時に、対象とするリンク要素のhref部分を(↑)のようにクエリ付きに書き換えておく ことでもできそうですね。 使用するurlがどのようなものか不明ですが、実際にはURIエンコードしておく必要がありそう。

bats2
質問者

お礼

ありがとうございます。 勉強になります。

関連するQ&A

  • javascriptの勉強中しはじめたばかりでわからないとこがあったの

    javascriptの勉強中しはじめたばかりでわからないとこがあったのでご教授ください。 まずあるホームページA(URL:http://192.168.3.110)からホームページBに飛びます。 ホームページBにはimgがあり、そのimg(飛び先URL:http://192.168.3.111)を押すとクリックURLにリファラ(ホームページAのURL)を付与(例:http://192.168.3.111?ref=http://192.168.3.110)して、 次のページへいくのにはどのようにすればいいか教えてください。 外部接続のjsファイルを作りたいです。 よろしくお願いします。

  • javascript リンク先の変更

    遅くに失礼致します。 Javascriptで可能かどうかは分からないのですが リンク先を変更する手段を探しています。 現在ホームページを組んでおり、jQueryのスクリプトお導入した所、 リンク先に数値が指定してありその数値を変更したいのですが 変更するとjQueryが動作しなくなり困っております。 html側のソースは <a href="a?x=344&y=-53" class="a_a"><img src="#"></a> <a href="b?x=-50&y=0" class="a_b"><img src="#"></a> 等となっており、 画像をクリックしたら一度 a?x=344&y=-53.html に移動してから自動で別ページへ誘導する事を 考えてみたのですがその様なファイルが作れるはずもなく行き先を失いました。 クリックしてリンクが a?x=344&y=-53 なら ****.html に誘導等といった事はjavascriptで可能なのでしょうか? また、対策として何か方法があるようでしたらご教授頂ければ幸いです。 何卒、宜しくお願い致します。

  • JavaScriptに関する質問です

    ホームページをつくっていますJavaScript超初心者です。どなたか手助けをしていただけますでしょうか?やりたいことというのは、次の通りです。 とあるページがありまして、次のような項目が並んでいます。 <li><a href="#" onClick="window.open('f.html?1,'newWin','width=850,height=650')">テキスト1</a></li> <li><a href="#" onClick="window.open('f.html?2,'newWin','width=850,height=650')">テキスト2</a></li> <li><a href="#" onClick="window.open('f.html?3,'newWin','width=850,height=650')">テキスト3</a></li> それぞれのテキストをクリックすると、新しいウィンドウが表示され、次のJavaScriptが起動します。 function fx(){ var num = location.search.substr(1,1); var the_id1 = "s" + num.toString(); var img = document.getElementById(the_id1).getElementsByTagName("img"); img[0].src = ""←このあたりが特に分かりません。 } 最後に新しいウィンドウページのhtmlを書いておきます。 <div id="s1"><img src="img/s1w.gif" name="s1img"/></div> <div id="s2"><img src="img/s2w.gif" name="s2img"/></div> <div id="s3"><img src="img/s3w.gif" name="s3img"/></div>  このように始めのページの項目をクリックすると、javascript fx が起動してdiv s1 ~s3の画像を取得する(入れ替える)というようにしたいのです。 つまり、最初のページのテキスト1をクリックすればdiv s1の画像を入れ替える、テキスト2をクリックでdiv s2の画像を、という具合にです。  ←このあたりが分かりませんと書いたように、画像を別々に取得する方法が分かりません。 どのように改良すればいいでしょうか?もしくは全く新しいものに変える必要があるでしょうか? 分かる方、どなたか教えてください。よろしくお願いします。

  • JavaScriptでテキストを隠したり開いたりするようなことを行いた

    JavaScriptでテキストを隠したり開いたりするようなことを行いたいのです。 A B C  ○○○○○ △△△△△ □□□□□ Aをクリックすると ○○○○○ ●●●●● △△△△△ □□□□□ Bをクリックすると ○○○○○ △△△△△ ▲▲▲▲▲ □□□□□ というようにその下の部分隠してある文言が出るようなスクリプトが書きたいのですがわかりません。 参考URLだけでもいいので宜しくお願いいたします。

  • ラジオボタンを使った簡単なアンケート(javascript希望)

    WEB上でアンケートを行い、その結果で飛び先が変わるページを作りたいと思います。 CGIではなくJavascriptで動かしたいのですが、あまり詳しくありません。原理を教えてもらってもちょっと。。なので、サンプルソースが欲しいのですがどうもみつかりません。 どなたか教えて欲しいです。お願いします! ■作りたいものの概要 アンケートは設問は二問。それぞれYorNの二択で、ラジオボタンで選択させます。 選択後、[結果]ボタンを押すと結果に応じたページが表示されます。 また、結果のパターンはYY,YN,NY,NNの四つのみで、YNとNYは別物と考えます。 ※ラジオボタンはデフォルトでYが選択されている。 ■その例; 設問1:あなたは●●ですか? はい いいえ 設問2:あなたは▼▼ですか? はい いいえ [結果] --------------- それぞれの結果ごとの飛び先をA.html, B.html, C.html, D.htmlとします。

  • [ASP+JavaScript]どこのページから来たの?を知りたい!

    こんばんわ。 JavaScriptとASPを用いてWebシステムを作っています。 確か、JavaScriptかASPでどこのURLから来たかということを転送先のページで認識させることができたと記憶しています。 使用例としては、AのページからBを表示した場合には「いつもありがとう」というようなメッセージを、他のページからダイレクトにBを表示した場合には「ページAの注意を先に読んでください」というようなメッセージを表示するとか・・・。 とにかく、表示先のページでどこのページから転送されてきたのかを認識させたいわけです。。。 どうぞ、ご伝授くださいませ。

  • ワンクリックで2つのページを開くには?

    画像にリンクを張る場合など Aというページにリンクしたい時は、 <A href="AのURL" target="_blank"><img src="画像のパス"></A> のように記述しますが、 画像をクリックした時(たぶん、Press)にAページ、 そのクリックを離した時(たぶん、Release)にBページと それぞれ別の2つのページを表示させたいのです。 おそらく JavaScript というものを使うようなのですが、 質問【1】 その記述例を教えて頂けないでしょうか? 質問【2】 またその場合、HTMLのヘッダ部に JavaScript の宣言は必要でしょうか? 特に必要ないのでしょうか?

  • Javascriptについて

    ページA ページB があって ページAにiframeでページBを埋め込んだり、ページB単体で表示したい場合、 それぞれで使用したいJavaScriptはそれぞれで読み込んでも良いですか? 同一のJavaScriptそれぞれのページで読み込む。 <script type="text/javascript" src="xxx.js"></script>

  • javascriptに関しての質問です。

    javascriptに関しての質問です。 例えば、他サイトのページHTMLを読み込み、その一部分(画像ファイルのurl)だけを取得したいと思います。 ----------------- ★自サイトページ ~~~~ <div id="img"> ここに表示 </div> ~~~~ ★別ドメインサイト <head>~</head> <body> <p>あああ</p> <img src="file.jpg"> ←ここのアドレス部分のみを取得したい。 おおおおおおおおおお </body> ----------------- プログラムの知識・経験はありますが、javascriptの知識レベルとしては初心者です。 どのような方法&関数がありますでしょうか、よろしくご教授ください。

  • JavaScriptについての質問です。

    javascript初心者です。方法が分かりませんので、教えていただける方、お願いいたします。ホームページを作っております。とあるページの下の部分をクリックすると、新しいウィンドウが開きます。 <a href="#" onClick="window.open('f/f.html?1','newWin','width=850,height=650')">テキスト</a> 新しいページは次のようになっています。 ↓ここからJavaScript↓ flag = false; function pd1() { if(flag) document.getElementById('ID1').style.visibility = "hidden"; else document.getElementById('ID1').style.visibility = "visible"; flag = !flag; } function fx(){ var num = location.search.substr(1,1); var the_id = "ID" + num.toString(); document.getElementById(the_id).style.visibility = "visible"; } ここからhtml↓ <div id= "w1" onMouseover="document.s1img.src='img/s1rr.gif'" onMouseout="document.s1img.src='img/s1w.gif'"> <a href="javascript:pd1()">テキスト</a></div> <div id="ID1" style="visibility: hidden;" onMouseover="document.s1img.src='img/s1rr.gif'" onMouseout="document.s1img.src='img/s1w.gif'"> <p>テキスト<br /> </div> <div id="s1"><img src="img/s1w.gif" width="29" height="39" name="s1img"/></div> 以上です。上記に関して説明を付け加えますと、新しいウィンドウ(新しいページ)上では、function fx とpd1が作動し、div ID1がプルダウンメニューのように開くようになっています。 それに付け加えたいのですが、冒頭であげた部分をクリックするとID1がプルダウンのように開くだけでなく、div s1の name="s1img"であげた部分を別の画像が表示されるようにするにはどのようなjavascriptを追加すればいいでしょうか?   どなたか教えていただければ有り難いです・・・・・。

専門家に質問してみよう