我有一个项目需要在我的javascript文件中使用jQuery。我收到错误告诉我'参考错误:$未定义。'当我从一行代码
加载我的页面时$(window).load(function()
完整功能位于下方的play.html.erb代码段中。我相信这是一个jQuery错误。
我正在使用Ruby 2.1.2p95和Rails 4.1.6。
我已经就如何让jQuery工作做了一些研究,但没有任何帮助。我查看了Installing jQuery in Rails 3.2.13
我尝试将<%= javascript_include_tag "//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js" %>
放入我的html.erb文件中,该文件包含我试图在jquery中使用的javascript文件
我也试过将<%= javascript_include_tag :application %>
放在那里。
有建议将整个文件放在我的app / assets / javascript中,所以我下载了jquery-2.1.1.min,js并将其放在那里,并将<%= javascript_include_tag "jquery-2.1.1.min" %>
放在html.erb文件中并将Rails.application.config.assets.precompile += %w( jquery-2.1.1.min.js )
放入我的assets.rb并通过终端预编译我的资产。
我已将gem 'jquery-rails'
放入我的gemfile中。
我也试过https://rubygems.org/gems/jquery-rails
上的2个方向我的application.js
中有正常指定的要求在我尝试的所有内容之后运行bundle install
以防万一。
play.js
$(window).load(function()
{
var c = document.getElementById("charhealthbar");
var ctx = c.getContext("2d");
var health = 5;
ctx.fillStyle = "#FF0000";
ctx.fillRect(0, 0, (health / 100) * 140, 25);
});
assets.rb
Rails.application.config.assets.version = '1.0'
Rails.application.config.assets.precompile += %w( creation.css )
Rails.application.config.assets.precompile += %w( Main.css )
Rails.application.config.assets.precompile += %w( creation.js )
Rails.application.config.assets.precompile += %w( play.css)
Rails.application.config.assets.precompile += %w( play.js )
Rails.application.config.assets.precompile += %w( jquery-2.1.1.min.js )
play.html.erb
<%= stylesheet_link_tag "Main.css" %>
<%= stylesheet_link_tag "play.css" %>
<%= javascript_include_tag "play" %>
<%= javascript_include_tag :application %>
<%= javascript_include_tag "jquery-2.1.1.min" %>
的application.js
//= require jquery
//= require jquery_ujs
//= require creation
//= require_tree .
的Gemfile
source 'https://rubygems.org'
gem 'rails', '4.1.6'
gem 'pg'
gem 'sass-rails', '~> 4.0.3'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'turbolinks'
gem 'jbuilder', '~> 2.0'
gem 'sdoc', '~> 0.4.0', group: :doc
gem 'spring', group: :development
gem 'jquery-rails'
我目前还在我的app / assets / javascripts文件夹中有jquery-2.1.1.min.js。 任何有关修复此错误的帮助将不胜感激。
答案 0 :(得分:0)
您应该在"play"
的包含标记之后添加jquery
的包含标记:
<%= stylesheet_link_tag "Main.css" %>
<%= stylesheet_link_tag "play.css" %>
<%= javascript_include_tag "jquery-2.1.1.min" %>
<%= javascript_include_tag :application %>
<%= javascript_include_tag "play" %>