【问题标题】:How to use mixpanel with twitter bootstrap dropdown menu?如何在 twitter 引导下拉菜单中使用 mixpanel?
【发布时间】:2012-08-14 02:50:17
【问题描述】:

我的代码如下所示:

<div class="navbar">
  <div class="navbar-inner">
    <div class="container">
      <ul class="nav pull-right">
        <% if user_signed_in? %>
        <li class="dropdown" id="menu7">
           <a class="dropdown-toggle" id="username" data-toggle="dropdown" href="#">
             <%= current_user.full_name %>
             <b class="caret"></b>
           </a>
          <ul class="dropdown-menu">
            <li><%= link_to('Edit my account', edit_user_registration_path, 
                  :id => 'edit_account') %></li>
            <li><%= link_to('Logout', destroy_user_session_path, :method => 'delete',
                  :id => 'logout_link') %></li>
          </ul>
        </li>
        <% else %>
          <li><%= link_to('Login', new_user_session_path, :id => 'login_link') %></li>
          <li><%= link_to('Sign up', new_user_registration_path, :id => 'signup_link') %></li>
        <% end %>
     </ul>
  </div>
</div>

我的 javascript 事件是这些:

  mixpanel.track_links('#username', 'Username clicked')
  mixpanel.track_links('#edit_account', 'Edit account link clicked')
  mixpanel.track_links('#logout_link', 'Logout link clicked')

我不知道为什么(我真的看起来很奇怪!)只有“点击用户名”事件有效。有没有人经历过类似的事情?

【问题讨论】:

标签: ruby-on-rails twitter-bootstrap mixpanel


【解决方案1】:

一种可能性是您需要在选择器中包含链接标签:

  mixpanel.track_links('#username a', 'Username clicked')
  mixpanel.track_links('#edit_account a', 'Edit account link clicked')
  mixpanel.track_links('#logout_link a', 'Logout link clicked')

这就是Mixpanel doc 中的做法。

另一种选择是您可能会以错误的方式处理此问题。与其跟踪链接的点击次数,不如使用 ruby​​ API 并将跟踪器放入控制器中,如 this part of the doc 所示。

因此,您可以在用户控制器中执行以下操作:

def edit
  track_event "edits account"
end

在会话控制器中:

def destroy
  track event "logs out"
end

【讨论】:

    猜你喜欢
    • 2012-05-03
    • 2013-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-02
    • 1970-01-01
    • 1970-01-01
    • 2012-07-05
    相关资源
    最近更新 更多