Jquery: Jcrop not working : Railscasts 182



我使用Railscasts 182裁剪上传的图像。根据视频,我实现了这个:

我正在上传个人资料页面的图像。这是我的配置文件控制器:

def edit
  @profile = current_user.profile
  if @profile.photo.nil?
    redirect_to current_user.profile
  else
    render :action => "crop"
  end
end
def update
  @profile = current_user.profile
  if @profile.update_attributes(params[:profile])
    if @profile.photo.nil?
      redirect_to current_user.profile
    else
      render :action => "crop"
    end
  else
    render :edit
  end
end

根据视频,我的crop.html.erb文件是:

<% "Crop avatar" %>
<% content_for(:head) do %>
  <%= stylesheet_link_tag "jquery.Jcrop" %>
  <%= javascript_include_tag "jquery.Jcrop.min" %>
  <script type="text/javascript">
  $(function(){
    $("#cropbox").jCrop();
  });
  </script>
<% end %>
<%= image_tag @profile.photo.avatar.url(:big), :id => "cropbox" %>

我在application.html.erb中添加了这些:

<%= javascript_include_tag "jquery.min" %>
<%= yield(:head) %>

当我提交图像时,它会显示普通图像。它不显示选择光标,因此无法在图像上选择视频中显示的区域。

我猜Jcrop不工作了。有人能告诉我问题出在哪里吗?

通过查看源代码或在firebug中运行$("#cropbox").jCrop();,确保jquery.Jcrop.min被包含在结果HTML文件中。

如果不是,那么尝试将//= require jquery.Jcrop.min行添加到application.js中,然后预编译您的资产。

如果它仍然没有被包括在内,那么一个绝望的解决方案是删除content_for head(:head)行,由于某种原因未能将您的js代码附加到头部(这就是我最终做的)。

相关内容

  • 没有找到相关文章

最新更新