Ruby on Rails 및 javascript에 대한 지식이 매우 부족하므로이 질문에 간단한 답이 있으면 저를 용서해주십시오. 다중 레벨 드롭 다운 메뉴가 필요한 웹 사이트가 있습니다. 필자는 mongrel을 사용하여 내 웹 사이트의 테스트 복사본을 작성하는 scriptalculous 드롭 다운 메뉴를 채택했습니다. 자체 레이아웃이있는 여러 페이지가 있습니다. 페이지에서 페이지로 건너 뛰면 드롭 다운 메뉴가 정상적으로 작동하지만 "보기/표시"페이지로 이동하면 첫 번째 레벨 메뉴 만 작동합니다. 내가보기 엔 점프가 어떻게 든 자바 스크립트를 잃어 버리는 것 같아. 누구나이 문제를 해결하는 방법을 알고 있습니다. 모든 레이아웃 헤드에는 다음과 같은 문자가 있습니다. -Scriptaculous 드롭 다운 메뉴가보기 /보기에서 작동하지 않습니다.
<%= stylesheet_link_tag 'style' %>
<%= javascript_include_tag :defaults %>
<script src="javascripts/prototype.js" type="text/javascript"></script>
<script src="javascripts/scriptaculous.js" type="text/javascript"></script>
<script type='text/javascript' src='javascripts/menu.js'></script>
Scriptaculous 다운로드와 함께 제공되는 prototype, controls 등을 사용하고 있습니다.
감사합니다. Jonathan 루트 템플릿 (색인)에서 페이지로 이동할 때 javascript_include_tag가 "src = ..."가 아닌 javascript_include_tag를 URL로 잘못 사용해야합니다. 상대 링크 (보여줄 색인). Rails는 URL을 "src = ...."에서 확인할 수 없습니다. javascript_include_tag 사용하기 Rails는 모든 템플릿 (index, show 등)에 링크를 넣습니다. "src = ...."에 전체 경로를 입력하면 모든 템플릿이 레일스에서 올바른 URL을 얻으므로 작동해야합니다. 아직도 이것을 시도 할 필요가있다. 레일스가 "... tag"스크립트 ","proto .. ","menu ";" ".de_tag : default"를 사용하지 않아 모든 .js가 필요하지 않은 페이지를로드합니다. 느린 페이지 로딩입니다. 파일이 캐시되는 한 – Don
은로드 속도를 현저히 늦추지 않아야합니다. 스크립트 실행 시간이 특히 느리지 않으면. –