2012-06-14 10 views
8

He desarrollado un widget para WordPress para mostrar la cartera, el usuario puede elegir si quiere paginación, categorías de filtro, el número de publicaciones por página ... y así sucesivamente, funciona todo perfectamente con un sistema de paginación php que he hecho.Dom Css perdido después de jQuery Pagination Wordpress widget

Estoy tratando de implementar un jquery ajax a esta paginación en el widget para que se vuelva a cargar sin volver a cargar toda la página. Tengo este código:

jQuery('.paginate a').live('click', function(e){ 
e.preventDefault(); 

var link = jQuery(this).attr('href'); 
jQuery('.widget_gantry_portfolio').html('<div class="loading"></div>'); 
jQuery('.widget_gantry_portfolio').load(link+' .widget_gantry_portfolio .portfolio_class'); 

La paginación funciona perfectamente en php, cuando implemente este código las obras de paginación, pero cuando se hace clic las pérdidas de widgets todas las preferencias de usuario (Mostrar filtro, muestran pagination..etc), los divs también pierden su calculada width% y la altura que fue en primer lugar presente en css (observados en firebug):

element.style{width and height} 

he estado varios días en torno a esto y he probar en lugar de vivo, encendido y delegar, y etc., pero ninguno de ellos funciona, esta paginación ajax es trabajando también perfectamente en la paginación de publicaciones en mi sitio, pero ¿el widget no recarga los elementos de Dom?

Lo más importante para mí son:

-Cada de los elementos que faltan anchura y la altura, que se encontraba en DOM CSS, en primer lugar, esta anchura se calcula con un guión enqued functions.php que dice así, por ejemplo, cuando tiene 4 columnas:

var mysizes = function() { 
    theWidth4 = jQuery(".mosaic-block4c img").css('width'); 
    jQuery(".mosaic-block4c").css('width', theWidth4); 
    theHeight4 = jQuery(".mosaic-block4c img").css('height'); 
    jQuery(".mosaic-block4c").css('height', theHeight4); 
} 

que llamar a los mysizes(); función del widget php con una etiqueta

-El filtro de categorías falta, creo que porque, cuando la carga de paginación, no reconoce los ajustes preestablecidos del usuario para el widget. Lo reconoce perfectamente en la primera página, pero no en las páginas siguientes.

Enlace al sitio con paginación widget de la cartera no funciona correctamente (por favor, haga clic en 2 página para ver):

http://framecero.com/aagantrywordpress/?page_id=635

Enlace a una categoría de la muestra con esta misma paginación de trabajo (la paginación en la parte inferior de la página):

http://framecero.com/aagantrywordpress/?cat=4

+0

mencionaste un script enqueued functions.php, ¿es posible que esto no se esté cargando cuando se lo llame desde ajax? – roryok

+2

vista rápida muestra que al menos está cambiando la estructura HTML. En la página paginada tiene .portfolio_class anidado dos veces, mientras que el original es solo una vez. –

+1

¡Sí! Jure C. Ese fue el problema y tuve que usar la función: ajaxComplete(); volver a cargar todo de nuevo Gracias –

Respuesta

1

De Jure C. comment:

Un vistazo rápido muestra que al menos está cambiando la estructura HTML. En la página paginada, tiene .portfolio_class anidado dos veces, mientras que el original es solo una vez.