0

私は誰かのコードをデバッグしようとしています (楽しい!)、コードは

jQuery(document).ready(function(){
  jQuery("#userinput").keyup(function(){
   jQuery(this).doTimeout('text-type', 250, function(){
      jQuery('#output').empty();
      var input = $(this).val();
      if (input.length > 0) {
        getUsers(input);
      } else {
        jQuery('#output').attr('size', 1);
      }
    });
    return false;
  });
});

親ドキュメントに含まれる doTimeout スクリプトは

<script type="text/javascript" src="http://github.com/cowboy/jquery-dotimeout/raw/master/jquery.ba-dotimeout.min.js"></script>

そして、私が得ているエラーは次のとおりです。

キャッチされていない TypeError: オブジェクト [オブジェクト オブジェクト] にはメソッド 'doTimeout' がありません

(マジック クローム インスペクタで)

私はしばらくこれに取り組んできましたが、運がありませんでした。私の JS の知識はあまりよくないので、不足していることがかなり明白であることを望んでいました。ありがとう。

4

1 に答える 1

3

raw.github.com がtext/plainの代わりに MIME タイプのヘッダーを送信するため、Github からスクリプトを直接参照しても機能しない場合がありtext/javascriptます。ローカル コピーを使用してみてください。そうすれば、パフォーマンスも向上する可能性があります。

MIME タイプの問題が原因で Chrome がスクリプトの実行を拒否した場合、doTimeoutメソッドが jQuery オブジェクトに追加されないため、このエラーが発生します。

于 2013-06-04T22:57:49.543 に答える