我知道由于asset pipeline compilation problems等原因,有一些关于Javascript无法在Heroku中运行的问题......这是我的头脑。
我只想在我使用Middleman构建的简单应用程序中添加一个简单的链接(见下文),该应用程序应重新加载页面onclick,然后触发shuffle!方法:
<a href="javascript:;" onClick="window.location.reload()">Click to refresh</a>
这甚至可能吗?它在本地工作正常,但当我推送到Heroku时不再有效。任何想法/帮助表示感谢。
以下是Heroku上实际应用的链接:http://coastguard-quiz.herokuapp.com/
我的index.html.erb代码如下:
---
title: Coast Guard Quiz
---
<h1>Coast Guard Rank Quiz</h1>
<h3>Guess the enlisted insignia below:</h3>
<%
seaman_recruit = {
img: "<img src = 'images/USCG_SR.png'>",
name: "Seaman Recruit",
en_class: "Seaman",
}
seaman_apprentice = {
img: "<img src = 'images/USCG_SA.png'>",
name: "Seaman Apprentice",
en_class: "Seaman",
}
seaman = {
img: "<img src = 'images/USCG_SM.png'>",
name: "Seaman",
en_class: "Seaman",
abbr: "SN",
title:"Seaman (last name)",
paygrade: "E3"
}
ranks = [seaman_recruit, seaman_apprentice, seaman, pettyofficer3, pettyofficer2, pettyofficer1]
current_rank = ranks.shuffle!.first
img_now = current_rank[:img]
name_now = current_rank[:name]
class_now = current_rank[:en_class]
abbr_now = current_rank[:abbr]
title_now = current_rank[:title]
paygrade_now = current_rank[:paygrade]
%>
<div id="container" class="shadow">
<p><%= img_now %></p>
<div id="hideaway" style="display:none;">
<p class="bld"><%= name_now %></p>
<p><%= class_now %></p>
<p><%= abbr_now %></p>
<p><%= title_now %></p>
<p><%= paygrade_now %></p>
<a href="javascript:;" onClick="document.getElementById('hideaway').style.display='none'; document.getElementById('showme').style.display='block'">Hide Answer</a>
</div>
<div id="showme">
<a class="show" href="javascript:;" onClick="document.getElementById('hideaway').style.display='block'; document.getElementById('showme').style.display='none';">Get answer</a>
</div>
</div>
<a href="javascript:;" onClick="window.location.reload()">Click to refresh</a>
答案 0 :(得分:2)
鉴于字符串有多简单,我不认为这是你问题的根源。资产的缩小更可能搞砸了你的JS,并且在评估代码之前某处存在JS错误导致JS无法工作。
我建议您使用JavaScript开发人员工具(例如Google Chrome JS console)打开该页面,并检查控制台中是否记录了任何错误。
更新:您发布的链接非常适合Google Chrome浏览器。