0

アセット パイプラインを古い Rails アプリにインストールしています。しかし、私はいくつかの本当に奇妙な結果を得ています。ページがapp/assetsディレクトリ内のすべての css と jquery をレンダリングしていることがわかりますが、html とのやり取りに苦労しています。

たとえば、ページを検査し、コンソール呼び出し$("html").html();ですべての htmlTypeError: Cannot call method 'html' of nullを取得しようとすると、レンダリングされている要素を取得しようとすると同じ結果が返されますか? しかし、ページはそこにあります。私が呼び出すjQueryと、正常に返されます。jQueryが存在しないのは好きではありません。

4

1 に答える 1

1

$は簡単な書き方jQueryです。後者が機能し、前者が機能しない場合は、パイプライン内の別のスクリプトが jQuery と競合し、別の目的で$シンボルを使用しようとしている可能性があります。

使用しようとしている可能性のある他のプラグインまたはライブラリを使用しています$か? $ = (something)それとも、どこかに書き込んで誤って自分で上書きしたことがありますか? これ以上の情報がなければ、問題がどこにあるのかを正確に知ることは困難です。

他のすべてが失敗した場合はjQuery()、すべての通話に使用し続けることができます. 外部スクリプト ファイルでは、jQuery オブジェクトをラッパー関数に渡すことでこれを回避することもできます。

(function ($) {

    $('div').append('You can use $ here without having to worry about conflict.');

}(jQuery))
于 2013-08-12T08:40:52.513 に答える