1

私はこの問題の解決策を数日間探していましたが、その過程でいくつかの白髪が増えました. 私はphpでJQueryポップアップスクリプトをエコーし​​ています:

  echo '<link rel="stylesheet" 
  href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>            
  <script src="functions.js"></script>
  <script type="text/javascript"> $(document).ready(function() { JQueryAlert("INSERT MESSAGE HERE!", 120); }); </script>';

問題は、発火する場合と発火しない場合があることです。起動しない場合、Chrome JS コンソールに次のエラー メッセージが出力されます: Uncaught TypeError: Object [object Object] has no method 'dialog'

同様の質問 ( Uncaught TypeError: Object #<Object> has no method 'dialog' )から識別できることから、問題は JavaScript ライブラリの重複呼び出しですが、JavaScript ライブラリを最低限(それ以下では機能しません)。何がこれを引き起こしているのですか?? 解決策を提供できる人には永遠に感謝します!!

4

1 に答える 1

-1

これは修正ではありませんが、コードの残りの部分が表示されないため、ダイアログ関数が存在するかどうかを基本的に確認し、存在する場合はアラートを作成し、存在しない場合は 100 待機する潜在的な回避策を次に示します。ミリ秒、もう一度やり直してください:

$(document).ready(function() { 
     function jqalert(msg) {
       if (typeof($.fn.dialog) != 'undefined') 
         JQueryAlert(msg, 120); 
       else 
         setTimeout(function() { jqalert(msg); }, 100);
     }
     jqalert("INSERT MESSAGE HERE!");
});
于 2013-05-19T00:20:31.383 に答える