Ruby on Rails에서 이상한 버그가 발생했습니다. 플래시 객체를 사용하여 여러 업로드를 처리하기 위해 Uploadify JQuery 라이브러리를 구현하려고합니다. Ajax로로드 된 탭에서이 기능을 구현하고있다. 이전에는 Uploadify의 영향을받은 HTML과 동일한 Ajax 페이지에서 내 Uploadify js 파일에 대한 javascript_include_tag가있었습니다. 그러나, 이것은 매우 이상한 결과를 만들어 냈습니다. 때로는 해당 페이지에서 내 Uploadify 함수 호출이 작동하고 다른 경우에는 완전히 실패합니다. 이 경우 탭 사이를 전환하여 작동하지 않았고 Ajax 페이지를 두 번째 또는 세 번째로 검색하면 일반적으로 문제가 해결되었습니다. 기발하게도 Firebug로 HTML을 검사하면 Javascript 기능이 작동하더라도 JavaScript 링크가 보이지 않아 파일에 대한 네트워크 요청을 볼 수 있습니다. 내 응용 프로그램 레이아웃에서 head 태그로 업로드하기 위해 javascript_include_tag를 이동하려고 시도했지만 Uploadify 플랫 아웃이 완전히 작동을 멈췄습니다.레일 3은 모든 자바 스크립트를 헤드 태그에 저장해야합니까?
Ajax 페이지의 링크 태그를 사용하여 업로드 기능을 프로덕션 서버로 푸시했는데 문제가 여전히 발생했지만 훨씬 덜 빈번합니다. 사실 나는 그것을 단지 몇 번 알아 차렸다. 또한이 기능은 다른 브라우저 기간 인 Firefox에서만 작동하지만, 완전히 다른 문제 일 수도 있습니다 (자바 스크립트가 브라우저 독립적이어야 함에도 불구하고 ...).
여기 내 머리 태그 내가 거기에 uploadify 호출을 포함하려고 할 때 어떻게 생겼는지입니다 :
%head
%title Virtual Robot Games
= stylesheet_link_tag 'style.css','web_app_theme.css', 'events.css', :media => 'screen'
= csrf_meta_tag
= javascript_include_tag 'jquery'
= javascript_include_tag 'prototype'
= javascript_include_tag 'noconflict.js'
= javascript_include_tag 'effects.js'
= javascript_include_tag 'calendar_date_select'
= javascript_include_tag 'highlight'
= javascript_include_tag 'textcounter'
= javascript_include_tag 'scriptaculous.js'
= javascript_include_tag 'collapsible.js'
= javascript_include_tag 'bbhelp.js'
= javascript_include_tag 'swfobject'
= javascript_include_tag 'application'
= javascript_include_tag 'uploadify'
추가 정보 :
내가 프로토 타입 및 JQuery와 그들이있어 모두를 사용하고 있습니다 끊임없이 서로 충돌하지만, 저는 보통이 문제를 해결할 수 있습니다. 필자는 두 라이브러리가 상충되는 장면을 보지 못했으며 때때로 JQuery 만 사용하기도했습니다. 일반적으로 갈등이 있다면 평평하게 나올 것입니다.
편집 사실 나는 내가 jquery-rails 보석을 사용하고, 나는이 문제를 알아 냈다고 생각하고 내 Uploadify의 js 파일에 jQuery 라이브러리를 포함하는 것을 잊었다. 대신 나는 googleapi에 대한 인라인 링크가있었습니다. Google API 링크를 포함하는 것으로 교체하면 문제가 해결됩니다. 내 원래의 질문이지만, 내 JavaScript 링크가 모두 내 머리 태그에 저장되어야합니까?
이 문제에 대한 임시 사례를 준비하려고합니다. – Noz