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

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

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

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

Internet Explorer

Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。

Firefox

Mozilla Foundationによって作られた無料、オープンソース、クロスプラットフォームなウェブブラウザ

JavaScript

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

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

3回答

5472閲覧

画像のロールオーバーが急に動かなくなりました

141kanae

総合スコア28

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

Internet Explorer

Internet Explorer(IE;MSIE)はマイクロソフトが開発したウェブブラウザです。Microsoft Windowsに組み込まれています。

Firefox

Mozilla Foundationによって作られた無料、オープンソース、クロスプラットフォームなウェブブラウザ

JavaScript

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

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

1クリップ

投稿2015/06/16 05:46

編集2015/06/16 07:25

###前提・実現したいこと
画像のロールオーバー

###発生している問題・エラーメッセージ
以前からずっと同じ方法で画像のロールオーバーを行っていたのですが、
一年ほど前からロールオーバーがされない不具合がでています。

ブラウザによって症状がことなり、原因がわからず対処できない状態です。

Chrome:一年ほど前から/リロードを数回行うと正常に動作する場合がある
Firefox:2ヶ月ほど前から/リロードしても動かず
IE:つい先日動かなくなったが、現在正常に動いている

コーディングをした人間が社内にいないため、
どのような仕組みでロールオーバーを行っているのか現在も調査中なのですが、
(HTML内のclass="btn"で制御しているようなのですが、CSS・JSに記述箇所が見つからない状態です。)
上記の通り、リロードなどで正常に動く場合があるため、
必要な記述がないわけではないかと思います。

ブラウザ依存の問題なのでしょうか。
考えられる原因があれば、小さなことでも構いませんのでご協力頂ければ助かります。

###HTML

<ul id="home" class="gnavi"> <li><a href="/"><img src="○○○.gif" alt="○○○" width="115" height="46" id="home" /></a></li> <li><a href="/"><img src="○○○.gif" alt="○○○" width="157" height="46" class="btn" /></a></li> <li><a href="/"><img src="○○○.gif" alt="○○○" width="157" height="46" class="btn" /></a></li> <li><a href="/"><img src="○○○.gif" alt="○○○" width="157" height="46" class="btn" /></a></li> <li><a href="/"><img src="○○○.gif" alt="○○○" width="157" height="46" class="btn" /></a></li> <li><a href="/"><img src="○○○.gif" alt="○○○" width="157" height="46" class="btn" /></a></li>

###JS(http://www.kyosuke.jp/yugajs/)

<script type="text/javascript" src="/design/btoner/js/yuga.js" charset="utf-8"></script>
//ロールオーバー rollover: function(options) { var c = $.extend({ hoverSelector: '.btn, .allbtn img', groupSelector: '.btngroup', postfix: '_on' }, options); //ロールオーバーするノードの初期化 var rolloverImgs = $(c.hoverSelector).filter(isNotCurrent); rolloverImgs.each(function(){ this.originalSrc = $(this).attr('src'); this.rolloverSrc = this.originalSrc.replace(new RegExp('('+c.postfix+')?(\.gif|\.jpg|\.png)$'), c.postfix+"$2"); this.rolloverImg = new Image; this.rolloverImg.src = this.rolloverSrc; }); //グループ内のimg要素を指定するセレクタ生成 var groupingImgs = $(c.groupSelector).find('img').filter(isRolloverImg); //通常ロールオーバー rolloverImgs.not(groupingImgs).hover(function(){ $(this).attr('src',this.rolloverSrc); },function(){ $(this).attr('src',this.originalSrc); }); //グループ化されたロールオーバー $(c.groupSelector).hover(function(){ $(this).find('img').filter(isRolloverImg).each(function(){ $(this).attr('src',this.rolloverSrc); }); },function(){ $(this).find('img').filter(isRolloverImg).each(function(){ $(this).attr('src',this.originalSrc); }); }); //フィルタ用function function isNotCurrent(i){ return Boolean(!this.currentSrc); } function isRolloverImg(i){ return Boolean(this.rolloverSrc); } },

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

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

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

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

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

orange0190

2015/06/16 06:02

この情報だけでは、答えようがないかと。載せられるコードがあれば、載せてください。
141kanae

2015/06/16 07:27

ShunsukeIzui 様 閲覧いただきありがとうございます。 通常の画像リンクにclass="btn"が入っているHTMLタグしかない状態だったため、 参考にならないかもしれないと思い記載を省いてしまいました。 他の回答者さんの助言でそれらしきJSの記述も見つかりましたので、 そちらも合わせて質問内容を編集致しました。
guest

回答3

0

ベストアンサー

要素の検証等で確認してみてはいかがでしょうか?
http://www.furimuke.com/2014/03/google-chrome-htmlcss.html

jsでconsoleでエラー等が出てないか
ロールオーバーする要素のcssにhoverはないか
を確認されてはいかがでしょうか?

投稿2015/06/16 06:10

nanndemoiikara

総合スコア775

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

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

141kanae

2015/06/16 07:34

nanndemoiikara 様 ご回答感謝いたします。 ご教授頂いた方法で、それらしきJSの記述を発見することができました。 yuga?という無料でDLできるJSを使用していたようです。 調べてURLに飛んでみたところ、そちらに記載されていたサンプルの動作が、 現在起きている問題と一致しましたので、 おそらくロールオーバーの記述を変更すれば直るのではないかと思います。 とても助かりました。 ありがとうございました。
141kanae

2015/06/16 08:01

直ってよかったです笑 お手数をおかけいたしました。 ありがとうございました!!
guest

0

使用していたJSがブラウザソフトなどのバージョンアップでうまく動かなくなっていたようです。

『Chromeのバージョン38によるyuga.jsの画像ロールオーバー不具合』
http://www.risewill.co.jp/blog/archives/2208

下記のURLに記載されている方法で、正常に動作するようになりました。

『chrome で yuga.js の_crと_onがうまく動作しない』
http://ohirosan.net/blog/entry/490/

皆様、ご回答ありがとうございました

投稿2015/06/16 07:58

141kanae

総合スコア28

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

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

0

以下のサイトにソースで使用されているyuga.js の仕様について記載されています。

http://www.kyosuke.jp/yugajs/

これによると、class="btn" を指定した画像が _on のついた画像をロールオーバーすると書かれています。

<img src="aaa.gif"> ロールオーバー用画像 aaa_on.gif

また、Jquery.js thicbox.js も必須となっております。
※いずれも、ダウンロードZIPに梱包されておりました。

サンプルを動作確認したところ、
IE7~IE11 ○
chrome ○
firefox ○
safari ○
※Windwos7 で検証
上記のブラウザでサンプルロールオーバーは動作していました。

ですので、
・スクリプト設置の記述が抜けている。
・/design/btoner/js/に格納されていないスクリプトがある。
・_on の画像を用意していない
のいずれかではないかと推察されます。

投稿2015/06/16 07:31

編集2015/06/16 07:49
KenjiObata

総合スコア440

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

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

141kanae

2015/06/16 07:38

KenjiObata 様 タイミング的に、ソースの追加編集と入れ違いになってしまったのかと思います。 お気になさらず。 ご回答感謝いたします。
141kanae

2015/06/16 08:09

KenjiObata 様 次にyuga.jsを使用する際に参考にさせていただきますね! ご回答ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問