0

わかりました、これは奇妙です。私のページでは、要素で .hide() または .show() を呼び出すたびに、ページのどこか (どこか) をクリックするまで何も起こりません。この動作は以前には発生していなかったので、何をしたために忍び寄ったのかわかりません.

私はCSSフレームワークとしてjQuery 1.7.2とブートストラップを使用しています(多くの変更があります)。この動作は、Chrome、Firefox、および Safari (OSX 上) で発生します。javascript を jQuery と . hide() 呼び出しだけに減らしましたが、それでも発生します。コンソールにエラー メッセージは表示されません。

この問題をデバッグする方法さえわかりません。私はそれが絶対に奇妙で、グーグルで調べても何も明らかにされていないと思います。.hide() が期待どおりに機能しない理由を調べるために、開発者ツールなどでできることはありますか?

私はコーヒースクリプトを使用しています。これがコーヒースクリプトです。

$('#recipient_type').blur ->
  if $(this).val() == 'Other'
    $('#recipient-details').show()
  else
    $('#recipient-details').hide()

これはコンパイル後の JavaScript です。

$('#recipient_type').blur(function() {
      if ($(this).val() === 'Other') {
        return $('#recipient-details').show();
      } else {
        return $('#recipient-details').hide();
      }
    });

しかし、この現象は私のコードだけで発生するわけではありません。たとえば、bootstrap-alert.js アラート解除スクリプトでも同じ問題が発生します。

4

1 に答える 1

1

非表示を実行するコードにブレークポイントを設定して、非表示が実行されているかどうかを確認できます。

これはぼかしなので、定義上、アクティブなオブジェクトから離れるまで実行されません。

于 2012-08-11T11:56:15.467 に答える