Я разместил выпадающее меню onclick в моей верхней панели навигации. В верхней панели навигации, я хотел бы изменить это изображение в моем new.html.erb шаблоне вида:Изменение изображения между шаблонами заметок, останавливающее выпадающее меню onclick?
<li class="navigation-bar-right"> <span class="create"> <%= link_to image_tag("createpost.svg"),new_post_url, method: :get %> </span> </li>
Я скопировал весь навигационный штрих-код от application.html.erb & добавили его вершина new.html.erb, изменение createpost.svg к createone.svg:
<li class="navigation-bar-right"> <span class="create"> <%= link_to image_tag("createone.svg"),new_post_url, method: :get %> </span> </li>
Howe не верьте, хотя изображение изменилось, выпадающее меню OnClick больше не работает в моем new.html.erb шаблоне вида ..
Пробовало много решений & не может понять это. Любая помощь будет потрясающей - спасибо!
application.html.erb
<% if user_signed_in? %>
<ul class="navigation-bar">
<div class="navigation-bar-right-inset">
<li class="navigation-bar-right"> <span class="create"> <%= link_to image_tag("createpost.svg"),new_post_url, method: :get %> </span> </li>
<li class="navigation-bar-right"> <span class="home"> <%= link_to image_tag("home.svg"), posts_url, data: {no_turbolink: true} %> </span> </li>
<li class="navigation-bar-right" id="drop"> <span class="settings"> <a href="#"> <img class="#" src="/assets/settings.svg"> </a> </span>
<ul class="dropdown">
<li> <%= link_to "Profile", edit_user_registration_path, method: :get %> </li>
<li> <%= link_to "Log out", destroy_user_session_url, method: :delete %> </li>
</ul>
</li>
</div>
</ul>
new.html.erb
<% if user_signed_in? %>
<ul class="navigation-bar">
<div class="navigation-bar-right-inset">
<li class="navigation-bar-right"> <span class="create"> <%= link_to image_tag("createone.svg"),new_post_url, method: :get %> </span> </li>
<li class="navigation-bar-right"> <span class="home"> <%= link_to image_tag("home.svg"), posts_url, data: {no_turbolink: true} %> </span> </li>
<li class="navigation-bar-right" id="drop"> <span class="settings"> <a href="#"> <img class="#" src="/assets/settings.svg"> </a> </span>
<ul class="dropdown">
<li> <%= link_to "Profile", edit_user_registration_path, method: :get %> </li>
<li> <%= link_to "Log out", destroy_user_session_url, method: :delete %> </li>
</ul>
</li>
</div>
</ul>
posts.js.coffee
jQuery ->
$("#drop").click (e) ->
e.preventDefault()
$(this).find(".dropdown").fadeToggle "fast"
$(document).on "click", (e) ->
$trigger = undefined
$trigger = $("#drop")
$(".dropdown").fadeOut "fast" if $trigger isnt e.target and not $trigger.has(e.target).length
CSS
ul li .dropdown {
display: none;
position: fixed;
z-index:100;
margin-top: -8px;
}
.dropdown li {
list-style-type: none;
padding: 8px;
width: 70px;
font-size: 11px;
font-family: helvetica;
}
Hi Richard - спасибо за ваш ответ! К сожалению, это не решило проблему. Я поставил предупреждение(); в коде сценария кофе, и он был вызван в представлении new.html.erb. :/ – domburford
Boo hoo, давайте плакать об этом немного больше. Какую отладку вы сделали? Любые ошибки в консоли? Как вы ссылаетесь на свою «posts.js.coffee»? –
Просто удалось разобрать ваш комментарий сквозь слезы. Никаких ошибок в консоли и ссылок на '// = require_tree .' в' application.js.' – domburford