2

我正在使用 Materialize CSS 并使用可折叠的手风琴样式元素(http://materializecss.com/collapsible.html)。

出于某种原因,只要我单击打开一个项目,它就会立即关闭。

这是我的代码。我的目标只是能够按预期使用可折叠(即元素打开并保持打开)。

<div style="width:600px; margin:0 auto;">
    <ul class="collapsible" data-collapsible="accordion">

    <% @friends.each do |friend| %>
        <li>
        <% latestTweet = CLIENT.user_timeline(friend.twitterHandle)[0] %>
          <div class="collapsible-header">

            <img src="<%= latestTweet.user.profile_image_url %>" width="40" height="40"><%= link_to friend.firstName + " (" + friend.twitterHandle + ")", "friends/" + friend.id.to_s  %><div style="float:right"><%= (Indico.sentiment(latestTweet.text)*100).round %></div>
          </div>
          <div class="collapsible-body">
            <p>
                <%= latestTweet.text %>
            </p>
          </div>
        </li>
        <% end %>
    </ul>
    </div>
4

2 回答 2

3

这可能是因为Materialize需要JQuery 2.1.1而 Rails 使用1.11.2。

在您的assets/application.js 中尝试

//= require jquery2
//= require jquery_ujs

https://github.com/rails/jquery-rails

于 2015-02-07T21:10:32.307 回答
0
$(function() {
    $( "#accordion" ).accordion();
  });
<div id="accordian">
<div style="width:600px; MARGIN:0 auto;">
    <ul class="collapsible" data-collapsible="accordion">

    <% @friends.each do |friend| %>
        <li>
        <% latestTweet = CLIENT.user_timeline(friend.twitterHandle)[0] %>
          <div class="collapsible-header">

            <img src="<%= latestTweet.user.profile_image_url %>" width="40" height="40"><%= link_to friend.firstName + " (" + friend.twitterHandle + ")", "friends/" + friend.id.to_s  %><div style="float:right"><%= (Indico.sentiment(latestTweet.text)*100).round %></div>
          </div>
          <div class="collapsible-body">
            <p>
                <%= latestTweet.text %>
            </p>
          </div>
        </li>
        <% end %>
    </ul>
    </div>
</div>

查看他们的文档:http ://api.jqueryui.com/accordion/

于 2015-02-07T06:22:59.410 回答