-
Notifications
You must be signed in to change notification settings - Fork 1
iRec sortable
Hasta ahora vimos jQuery y jQueryMobile como soluciones practicas. El hermano incordioso de la familia es jQueryUI
jQueryUI tiene soluciones de interactividad, pero suele ser algo que no se usa en produccion a menos que se tome un buen tiempo en customizarlo. En nuestro caso solo necesitamos un widget: sortable
. Afortunadamente cuando vamos a descargar jQueryUI podemos elegir que partes queremos.
Vayan a la pagina de descarga de jQueryUI y asegurense de solo tener tildado:
- UI Core: Core
- UI Core: Widget
- UI Core: Mouse
- UI Core: Position
- Interactions: Draggable
- Interactions: Droppable
- Interactions: Sortable
Y descarguenlo. Deberia descargarles un archivo .zip del cual solo necesitamos el archivo
jquery-ui.min.js
Ahora bien, esto nos va a dar la funcionalidad de arrastrar y soltar (drag'n drop) de elementos, pero en dispositivos tactiles esto necesita una vuelta mas de rosca.
Encontre este ejemplo de alguien que ya mezclo los eventos touch con la funcionalidad sortable
: http://forresst.github.io/2012/06/22/Make-a-list-jQuery-Mobile-sortable-by-drag-and-drop/
En el ejemplo se usa otra libreria: jQuery UI Touch Punch que tambien vamos a descargar, el vinculo esta en la pagina del ejemplo. Guardaremos el archivo en js/jquery.ui.touch-punch.min.js
y lo incluiremos en nuestro index.html
. Fijense que solo deben agregar la linea del medio, las otras las dejo para que se orienten:
<script type="text/javascript" src="js/jquery-ui.min.js"></script>
<script type="text/javascript" src="js/jquery.ui.touch-punch.min.js"></script>
<script type="text/javascript" src="js/helpers.js"></script>
Ahora bien, necesitamos poder reordenar la lista de preguntas en #nueva-guia, entonces el codigo de inicializacion lo ubicaremos en el evento pagecreate
(necesitamos que suceda solo una vez) de #nueva-guia. Al comienzo de la inicializacion de #nueva-guia, siguiendo el ejemplo, inicializamos nuestra lista (ul#preguntas
) con .sortable
. Nuevamente, dejo parte del codigo que no deben repetir, esta ahi para que ubiquen donde debe ir:
$('#nueva-guia').on('pagecreate', function(){
console.log('pagecreate on nueva-guia');
$( "#preguntas" ).sortable({
axis: 'y'
});
$( "#preguntas" ).disableSelection();
$( "#preguntas" ).on("sortstop", function(event, ui) {
$('#preguntas').listview('refresh');
});
//...
- Repaso y conceptos basicos
- Ejercicios para repasar
- Problematica de desarrollo mobile
- Phonegap
- Requerimientos e instalacion
- Phonegap CLI
- [Primeros ejercicios con Phonegap](Ejercicio Phonegap)
- Plugins
- Hello world
- Estructura de un proyecto Phonegap
- Plugin Device
- Debugging
- Incorporando un framework CSS
- Plugin Vibration
- Sumando partes
- Plugin Battery Status
- Un poco de jQuery
- jQuery Mobile
- Navegacion
- Plugin Dashboard
- Revision de Plugin Dashboard
- Paginas extra
- ToDo
- Persistencia
- ToDo Persistente
- Plugin Camera
- Opciones de camara
- App Mi Galeria
- Revision de Galeria
- Plugin File
- Escribir y leer texto
- Escribir archivos binarios
- Guardando fotos
- Debugger: weinre
- Inspeccionar con weinre
- Phonegap Developer App
- Refactor de apps
- Plugin Media
- Pruebas con audio
- Control y monitoreo de audio
- Encapsular play/pausa
- Hacks
- Formato de tiempos
- Grabar y reproducir
- Proyecto Integrador
- Revision de interfaz
- Interfaz basica
- Entrevista: modelo
- Funcionalidad: revision
- Seleccion de framework
- iRec: navegacion
- iRec: fileApi
- iRec: guias
- iRec: entrevistas
- iRec: recordApi
- iRec: helpers
- iRec: mediaApi
- iRec: inicializar paginas
- iRec: refactor
- iRec: mediaApi refactor
- iRec: recordApi refactor
- iRec: helpers
- iRec: guias.js
- iRec: entrevistas.js
- iRec: crear guias
- iRec: re-inicializando
- iRec: re-ordenando
- iRec: pendientes
- iRec: reporte ux
- iRec:revision: volver
- iRec:entrevista: volver
- iRec:revision: cambios
- iRec:revision: stop
- iRec:revision: Rew 10"
- iRec:revision: tag Go
- iRec: limpieza
- Firma de apps
- Android
- Generacion de key
- Firma de apk
- Alineacion de zip
- Firmar con Phonegap
- iOS
- Detalles finales
- Config.xml
- Iconos
- Splash