質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

3回答

5470閲覧

マウスオーバーでブラウザのステータスバーに表示されるURLを非表示にする方法

Hebasan5

総合スコア9

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2021/11/23 03:20

編集2021/11/23 03:55

前提・実現したいこと

<a href='https://xxx'>リンク名</a>
とリンクさせている場合、マウスオーバーでブラウザのステータスバーに表示されるURLを非表示にする方法で困っています。

該当のソースコード

【方法1 Html5】 <a href="../index.html" onmouseover="window.status=''; return true;" onmouseout="window.status=defaultStatus; return true;">リンク名</a> 【方法2 JavaScript】 <a href="javascript:void(0);" onclick="OnLinkClick();">リンク名</a> <script language="javascript" type="text/javascript"> function OnLinkClick() { window.location.href = ''https://xxx'; } </script>

方法1でstatusを空白にすれば昔のブラウザなら効果があったはずですが、現在は利かないようです。
方法2では "javascript:void(0)" がステータスバーに代わりに表示されてしまいます。
Html5とcssはある程度分かりますが、JavaScriptはまったく分かりません。
他に良い方法は無いでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dodox86

2021/11/23 03:23

Javaではなく、JavaScriptです。全然違います。
Hebasan5

2021/11/23 03:29

申し訳ないです。JavaScriptと入力している途中でエンターしてしまったようです。
dodox86

2021/11/23 03:32

質問は編集できますのでタグを含めて修正しましょう。そうすることで、JavaScript/HTMLに詳しい方の回答を得やすくなります。雑な印象を受ける質問だと回答も避けられがちになります。
Hebasan5

2021/11/23 03:45

編集できることを知りませんでした。ありがとうございます。
guest

回答3

0

ググった結果、安全面を考えて非表示にすることはできません。
<a href="#">でいいでしょうか?
それか、aタグじゃなく別のタグを使うか。

投稿2021/11/23 06:35

skys215

総合スコア910

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

ちょっとネタ的なコードになってしまいましたが。
サンプルを置いておきます。

https://jsfiddle.net/Lhankor_Mhy/e4grv3nc/

css

1.noStatus{ 2 pointer-events: none; 3}

js

1document.addEventListener('click', ({ pageX, pageY }) => { 2 document.querySelectorAll('.noStatus').forEach(e=>e.classList.remove('noStatus')) 3 document.elementFromPoint(pageX, pageY).click() 4})

投稿2021/11/24 05:49

Lhankor_Mhy

総合スコア36960

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hebasan5

2021/11/24 08:05

できました! リンク文字のある場所をマウスオーバーしてもURLは表示されなくなりました。 リンクのあるページで、どこか別の場所をマウスクリックすると表示されるようになりますが、ページを読み込んだ直後はマウスオーバーしても表示されません。 どうもありがとうございました。
Hebasan5

2021/11/24 08:31

訂正していただきありがとうございます。しかし、前と同じでした。 クラスnoStatusをリンクする文字列だけに適用しているせいなのでしょうか? しかし、ページを読み込んだ直後はブラウザのステータスバーには表示されませんので、これで目的は達しています。
Lhankor_Mhy

2021/11/24 08:33

本当にこれはネタ的なコードなので、実際に使うのはお勧めできません。 skys215さんのご回答のとおり、a要素ではない別の要素を使うのが一番無難です。
Hebasan5

2021/11/24 09:05

マウスクリックしてリンク先に飛ばすことが主目的ではなく、リンクがあるかどうかがページを見て分からないようにするのが目的なのです。 a 要素以外で、クリックすれば飛ぶようにすることは私でも可能ですが、上記目的には使えないので、これで十分です。ありがとうございました。
Lhankor_Mhy

2021/11/24 09:09

そうだったのですね。 ご解決されて何よりでした。
guest

0

hrefにはダミーを設定して、ホントのリンク先をdata-hrefのような設定にするとよいかもしれません

javascript

1<div>parent 2<a href="#" data-href="hoge.html" >リンク名<span>test</span></a> 3</div> 4 5<script> 6document.addEventListener('click',e=>{ 7 let n; 8 if(n=e.target.closest('a[data-href]')){ 9 e.preventDefault(); 10 location.href=n.dataset['href']; 11 } 12}) 13</script>

投稿2021/11/24 01:23

yambejp

総合スコア116724

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hebasan5

2021/11/24 03:59

マウスオーバーすると "***.html#"のようにURLが表示されてしまいます。(***はベースhtml名) やはりハイパーリンクを非表示にするのは不可能になっているみたいですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問