1
我有fancybox在我的开发环境中工作完美,但是当我推到Heroku制作时,它不起作用。我尝试着看着这里的所有帮助(预编译资产等),尝试了一切,但似乎无法让它工作!希望有人能帮助我在这里...rails,fancybox不能在heroku制作中工作
这里是我的application.html.erb:
<html>
<head>
<%= analytics_init if Rails.env.production? %>
<%= favicon_link_tag "/favicon.ico" %>
<link href='http://fonts.googleapis.com/css?family=Source+Code+Pro:200,300,400,500,600,700,900' rel='stylesheet' type='text/css'>
<!-- Add jQuery library -->
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
<%= csrf_meta_tags %>
<!-- WORLD MAP -->
<link href="/assets/jqvmap.css" media="screen" rel="stylesheet" type="text/css" />
<script src="/assets/jquery.vmap.js" type="text/javascript"></script>
<script src="/assets/jquery.vmap.world.js" type="text/javascript"></script>
<!-- Add fancyBox -->
<link rel="stylesheet" href="/fancybox/source/jquery.fancybox.css?v=2.1.5" type="text/css" media="screen" />
<script type="text/javascript" src="/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>
</head>
<body>
<%= render "layouts/header" unless @disable_header %>
<%=yield %>
</body>
</html>
我的application.js:
//= require rails_autocomplete
//= require jquery
//= require jquery_ujs
//= require jquery.fancybox
//= require jquery.turbolinks
//= require turbolinks
//= require bxslider
//= require fancybox
//= require_tree .
var fancybox = function(){
$('.fancybox').fancybox({
parent: "body",
helpers: {
overlay: {
locked: false
}
}
});
};
$(document).on("page:load ready", fancybox);
如果有人认为我做的不是,那将会很棒 - 或者至少可以指出我如何在Heroku Production中进行调试。提前致谢!
嗨,如果你可以分享你的application.js文件,那么它会更好地回答你的问题。 – 2014-11-25 06:01:12
没问题 - 编辑原始帖子。再次,我在开发过程中工作得很好,但Heroku Production不起作用。当我点击Fancybox链接时,它会转到另一个页面,并显示图片。 – gitastic 2014-11-25 07:15:47
看起来是因为如果您将在生产模式下启动应用程序,您的应用程序将在网页上获得一些js两次,因为您在application.html中定义了两次,另一个是application.js,请使所有的唯一性检查它们。 – 2014-11-25 07:37:12