link_to链接无响应页面没有错误,呈现正常

时间:2014-11-05 15:11:34

标签: html css ruby-on-rails iframe

我正在使用Rails 4.1.4。

我在主页的某个部分内有一系列链接,这些链接呈现正常但完全没有响应,没有任何类型的错误消息。页面:

主/ index.html.haml:

.container.main
  %h4 Featured Video
    .featured
      = render partial: 'main/video', locals: {video: @featured}

@featured在main_controller.rb中确定:

class MainController < ApplicationController
  def index
    @featured = Video.all.sample(1)[0]
  end
end

视频以_video.html.haml:

呈现
.video-head
  = link_to "#{video.event.conference.name} #{video.event.name_suffix}", video.event
.video-show

  - if video.youtube_code
    .embed-container
      = embed(video.youtube_code)
.video-stats
  .video-title
    = link_to video.title, video_path(video)
    - if user_signed_in? && current_user.role == 'admin'
      = link_to edit_admin_video_path(video) do 
        %i.fa.fa-pencil.small
  %br
  .video-presenters
    = raw display_linked_presenters(video)

  .small.video-license
    = render "videos/license", video: video

  .video-abstract
    = raw video.abstract

  .small-info
    Rated:
    = video.rating
    %br
    Views:
    %strong
      = count_views(video)

所有这一切都很好。当我转到localhost页面时,类.video-stats中的所有链接都完全没有响应。我可以转到Chrome中的inspect元素并找到渲染的html:

<div class="video-stats">
  <div class="video-title">
    <a href="/videos/24">Lorem Ipsum</a>
    <a href="/admin/videos/24/edit"><i class="fa fa-pencil small"></i></a>
  </div>
<br>
  <div class="video-presenters">
    <a href="/presenters/4">Laura Fields</a>
  </div>
  <div class="small video-license">
    <div xmlns:cc="http://creativecommons.org/ns#">
      This presentation, by
      <a href="/presenters/4">Laura Fields</a>,
      is licensed under a
      <a href="http://creativecommons.org/licenses/by-sa/3.0/" rel="license" target="_blank">Creative Commons Attribution ShareAlike 3.0</a>
      <br>
      <a href="http://creativecommons.org/licenses/by-sa/3.0/" rel="license">
        <img alt="80x15" src="http://i.creativecommons.org/l/by-sa/3.0/80x15.png">
      </a>
    </div>

  </div>
  <div class="video-abstract">
    "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
  </div>
  <div class="small-info">
    Rated:
      Everyone
    <br>
    Views:
    <strong>
      7
    </strong>
  </div>
</div>

如果我点击inspect element html页面中的链接,它们就能正常工作。我设法证明这可能是某种JavaScript问题?但是我没有在这个页面上使用任何JavaScript,并且该类的OUTSIDE页面上的所有链接都可以正常工作。所以也许它与iframe元素有关。但我还没有找到任何关于iframe元素扰乱链接的内容,也不知道如何解决这个问题。

使用以下辅助方法呈现视频:

def embed(youtube_code)
  content_tag(:iframe, nil, src: "//www.youtube.com/embed/#{youtube_code}")
end

我相信所有必需的JavaScript文件在application.js中都是正确的顺序:

//= require jquery
//= require jquery_ujs
//= require bootstrap-sprockets
//= require moment
//= require bootstrap-datetimepicker
//= require pickers
//= require cocoon
//= require_tree .

我认为值得注意的是,我在视频节目页面中也使用了相同的部分,并且它也有同样的问题。 :/我将其标记为CSS,因为我认为它可能与z-index有关(.embed-container占用.video-stats在我使用Chrome Dev Tools突出显示时所做的空间)。即便如此,我也不知道如何解决这个问题。

我很难过。

0 个答案:

没有答案