問題に解答すると画面に「正解!(残念!)」と出る

赤羽さん  
(No.1)
今日から突然、問題に解答すると画面に「正解!(残念!)」と出て背景が白くなって解説が見づらくなりました。
昨日まではこんなの出なかったのに仕様が変わったのでしょうか?
解説が見づらくてとても困っています。
回避策を教えてください。
2021.06.23 12:51
キョウタンサンさん 
(No.2)
私も困ってます。。。
運営に問い合わせましたが、返事が来ません
2021.06.23 13:35
管理人 
(No.3)
新しいUIについての貴重なご意見をありがとうございます。改善に向けて頂戴しておきます。

正解・不正解の表示は2012年以来更新していなかったので、様々な点を考慮して今回変更に踏み切りました。現在、パイロット運用期間中でして元に戻す可能性もありますが、その判断は個別のご意見ではなく客観的な指標によって行いますので必ずしもご希望に添える形になるとは限りません。

ただ半透明になることにより解答から1秒程度の間、解説が見えにくくなってしまうことも確かですので、半透明になる範囲を狭くする等の調整をしてみます。
2021.06.23 13:35
赤羽さん  
(No.4)
>ただ半透明になることにより解答から1秒程度の間、解説が見えにくくなってしまうことも確かですので、半透明になる範囲を狭くする等の調整をしてみます。

1秒というかずっと白いままです。。
2021.06.23 14:06
管理人 
(No.5)
こちらの環境では1秒で半透明が解除されているので何らかのバグでしょうね。ご報告いただいた内容から推察するとJSが上手く動作していないのだと思います。ブラウザのスーパーリロードで最新のファイルを再読み込みしてみても同じでしょうか?
2021.06.23 14:47
赤羽さん  
(No.6)
再読み込みすると問題が変わります。
2021.06.23 15:53
unvirusさん 
(No.7)
同様の現象かは解りませんけど
ipadのサファリでADFiter(コンテンツブロッカー)を有効にしていると
解説文が薄グレーのままになりました。
広告を受け入れる様にすると問題無く表示されました。
2021.07.01 15:47
これから試験勉強頑張さん 
(No.8)
iPhoneのSafariでもなります。
ADFiterをオフにしてもダメでした。
Chromeは大丈夫なので、ブラウザの問題だと勝手に解釈しています。
2021.07.02 18:53
kurikoさん 
(No.9)
Mac, WindowsともにChromium版 Microsoft Edgeにて発生します。
Google Chrome, Firefox, Safariでは正常に動作しました。
Microsoft Edgeのコンソールで以下を実行してみたところ、
$('#canvas_answer_front').addClass('fadeout');
$('body').removeClass('answer ok ng');

document.getElementById('canvas_answer_front').classList.add('fadeout');
document.body.classList.remove('answer', 'ok', 'ng');
は意図通り動きましたが、これらをsetTimeoutに渡した以下はいつまで経っても実行されませんでした。
setTimeout(function() {
$('#canvas_answer_front').addClass('fadeout');
$('body').removeClass('answer ok ng');
}, fadeTime);
setTimeout(
    document.getElementById('canvas_answer_front').classList.add('fadeout');
    document.body.classList.remove('answer', 'ok', 'ng');
, 100);
近いものとしてstackoverflowで「why-edge-browser-does-not-process-javascript-settimer-like-other-browsers」というものはありました。
Microsoft EdgeでのsetTimeoutの挙動に問題がありそうですが、原因と解決はまだ見つけられていません。
なお、caniuse等でも対応となっていますし、Microsoft Edgeのコンソールで以下は意図通り実行されました。
setTimeout(() => {
    alert('test')
}, 1000)
setTimeout(() => {
    console.log('hoge')
}, 1000)
2021.07.03 21:20
管理人 
(No.10)
kurikoさん

大変詳細な分析ありがとうございます。Edgeブラウザにおける固有のバグのようですね。Edgeを使われている方は無視できない一定数いらっしゃるので、こちらで再現を試みて、setTimeout以外の方法で同じ動作を実現できるか試してみますね。
2021.07.05 17:05

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。

その他のスレッド


Pagetop