9

Estoy integrando mi aplicación Rails 3.1 con jQuery mobile (Beta 2, por el momento), y no estoy seguro de cómo organizar mi JS & CSS.Rails 3.1 y jQuery mobile: ¿la mejor manera de organizar su JS y CSS teniendo en cuenta la cartera de activos?

tengo esta etiqueta en la cabeza de mi application.mobile.erb (copiado derecha desde http://jquerymobile.com/download/):

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0b2/jquery.mobile-1.0b2.min.css" /> 
<script src="http://code.jquery.com/jquery-1.6.2.min.js"></script> 
<script src="http://code.jquery.com/mobile/1.0b2/jquery.mobile-1.0b2.min.js"></script> 

¿Debo poner mi stylesheet_link_tag de 'aplicación' justo encima de este modo mis estilos CSS no anulan El elegante CSS de jQuery Mobile? ¿Qué pasa con javascript_include_tag para 'aplicación'?

¿O quizás todo esto debería estar completamente separado?

No estoy seguro de cómo organizar todo esto/si hay una manera convencional de hacerlo. Entrada apreciada.

(. Por favor, pregunte para más detalles si necesita alguna)

EDIT: * También me pregunto dónde poner mis JS y CSS específicos para dispositivos móviles ...

Respuesta

6

Ahora hay un jQuery Mobile Ruby gem que pondrá a su disposición los archivos de jQuery Mobile en la canalización de activos.

La instalación es fácil. Basta con añadir la gema para sus aplicaciones Gemfile

gem "jquery-mobile-rails" 

y ejecutar bundle install. A continuación, puede añadir

//= require jquery.mobile 

a su application.js o cualquier otro lugar que desee incluir los archivos.

+0

Esta joya es similar y también puede ser útil. https://github.com/dbloete/jquery_mobile-rails – Pygmalion

+0

Gracias - Me aseguraré de probar esto cuando tenga la oportunidad. – dmonopoly

+0

El enlace ya no es válido. – Meier

1

Es realmente su decisión en lo que quieres tener prioridad Es posible que algunas cosas tengan prioridad sobre otras basadas simplemente en el orden que usted llame cosas (si se llama a una función en el archivo2, asegúrese de que el archivo 1 que define esa función esté incluido antes).

En términos de cómo trabajar con asset_pipeline, puede descargar los activos usted mismo y agruparlos en application.css/application.js o mantenerlo en <head> en el orden que le resulte más conveniente.

6

Al igual que usted, estaba bastante confundido al descubrir cómo usar jQuery Mobile (ahora la versión 1.0) con la nueva cartera de activos de Rails 3.1.

Primero, suelte jquery.mobile.js y jquery.mobile.css en assets/javascripts y assets/stylesheets, respectivamente.

En segundo lugar, insertar "requerir jquery.mobile" en sus application.js manifiestan

//= require jquery 
//= require jquery_ujs 
//= require jquery.mobile 

y el mismo a su application.css manifiesta:

*= require_self 
*= require_tree . 
*= require jquery.mobile 

En tercer lugar, poner "application.js "y" application.css "en el diseño, application.html.erb

<meta name="viewport" content="width=device-width, initial-scale=1"> 
<%= javascript_include_tag "application" %> 
<%= stylesheet_link_tag "application" %> 
<%= csrf_meta_tags %> 

En cuarto lugar, no olvide agregar la línea 'meta name ~~~' para que funcione correctamente.

<meta content="width=device-width, minimum-scale=1, maximum-scale=1" name="viewport"> 

También utilice las propiedades móviles jQuery correctamente, como 'data-role =”página”' en la página. Otros recomiendan utilizar gemas como 'jquery-mobile-rails' o similar, pero yo no lo haría.

+1

Esto es sencillo y mucho menos misterioso que usar la gema jquery-mobile-rails. Gracias. –

Cuestiones relacionadas