A better alternative when using popular third-party assets is to look on Rubygems for a gemified version of the asset. In this case fancybox2-rails.
gem 'fancybox2-rails', '~> 0.2.8'
Adding the gem to your application.js with sprockets:
//= require jquery
//= require fancybox
Or in a script tag:
<%= javascript_include_tag "fancybox" %>
And the css:
/*
*= require_self
*= require fancybox
*= require_tree .
*/
The advantage of using Gemified packages is that its easier to maintain and you avoid polluting your codebase with 3rd party code. The drawback is that the gem may be several versions older than the actual software it encapsulates.
If you need to add vendor files you should probably be adding them to lib/assets and not app/assets, since it makes a clear separation between the code which actually drives your unique app and dependencies.
Another thing to remember is that assets are most often compiled at deploy time in your production environment (this is especially true on Heroku) and not per request (which would be very slow). So you cannot use conditions in your sprockets directives.