ここから本文です

jquery JavaScript を使ってAタグをクリック(移動)したいです AタグにはIDやクラ...

ser********さん

2017/3/1102:50:53

jquery JavaScript を使ってAタグをクリック(移動)したいです
AタグにはIDやクラスの設定はありません

<div class="Links">

<p class="Links1">
<a href="ttp://gomennasai.jpg1">Links</a>
</p>
<p class="Links2">
<a href="ttp://gomennasai.jpg2">Links</a>
</p>
<p class="Links3">
<a href="ttp://gomennasai.jpg3">Links</a>
</p>
</div>

例えばこんな感じのページだとすればclassネームを指定して特定のリンクに自動移動させたいです
説明が下手で申し訳ないのですがご教授いただければ幸いです…

閲覧数:
99
回答数:
4

違反報告

ベストアンサーに選ばれた回答

piy********さん

2017/3/1119:25:04

どのタイミングでクリックしたいのか、よくわかりませんが、この辺が参考になるのでは無いでしょうか。
サンプルはIDでやってますが、JQueryなのでクラス指定でも書けると思います。


http://qiita.com/yukiyukki/items/06295041ed366eb5a682

  • 質問者

    ser********さん

    2017/3/1208:22:53

    回答ありがとうございます。

    そちらの記事は既に拝見しておりましたが、AタグにID及びクラスが指定されていない(出来ない)為私の希望通りの行動は起こしてくれませんでした。

  • その他の返信(1件)を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この回答は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜3件/3件中

並び替え:回答日時の
新しい順
|古い順

tai********さん

2017/3/1106:55:27

えー
aタグには元々リンク先に飛ぶ機能があるのになぜjsを使う必要があるのでしょうか?

外部ページの特定の箇所に飛ばしたいのであればハッシュを使用すればいいかと

もし外部ページのハッシュで
飛び先に何らかの理由でIDの設定が出来ない箇所に飛ばしたいという事であれば
jsを使う必要が出てくるとは思いますが

その場合
やった事は無いのでアイデアの提案という事になりますが
例えば飛び先の特定の画像の位置にスクロールしたい場合
リンク元でaタグのhrefにハッシュをつけて画像名を指定しておきます。

推測ですが、おそらくこの状態でも正常にページ遷移すると思います。

次に飛び先でwindow.location.hashあたりでハッシュを抜きだします。

次に抜き出したハッシュを#を取り除き画像名を取得します。

var hoge = 取得したハッシュ
なんかにして
このハッシュ名(画像名)をquerySelector('img[src='+ hoge +']')
にてターゲットの画像を取得します。
あとは、ターゲットのスクロール位置をwindowのスクロール位置に入れてやればいけるのではないかと思います。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

app********さん

2017/3/1106:56:45

それならjqueryもいりません。headタグ内に、<meta http-equiv="Refresh" content="自動移動までの秒数;URL=URLをここに入れる">を入れればできます。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

ast********さん

2017/3/1107:02:17

もしリンクのURLが欲しいという意味なら
<p class="Links">をgetElementsByClassNameあたりで取って、それからgetElementsByTagNameでaタグを取れます。
あとはgetAttributeでurl抽出

function getURLs()
{
var parent = document.getElementsByClassName("Links")[0];
var anchorArray = parent.getElementsByTagName("a");
for(var i = 0; i < anchorArray.length; i++)
{
alert(anchorArray[i].getAttribute("href"));
}
}

getElementsByClassNameは古いブラウザでは使えないかもしれない

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる