Dom Css verloren nach jQuery Pagination WordPress-Widget

Lesezeit: 3 Minuten

Benutzer-Avatar
José Lo

Ich habe ein Widget für WordPress entwickelt, um das Portfolio anzuzeigen, der Benutzer kann wählen, ob er Paginierung, Filterkategorien, die Anzahl der Posts pro Seite usw. möchte, es funktioniert alles perfekt mit einem von mir erstellten PHP-Paginierungssystem.

Ich versuche, eine Ajax-Jquery für diese Paginierung im Widget zu implementieren, damit sie neu geladen wird, ohne die gesamte Seite neu zu laden. Ich habe diesen Code:

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');

Die Paginierung funktioniert perfekt in PHP, wenn ich diesen Code implementiere, funktioniert die Paginierung, aber wenn auf das Widget geklickt wird, verlieren alle Benutzereinstellungen (Filter anzeigen, Paginierung anzeigen usw.), die Divs verlieren auch ihre berechnete prozentuale Breite und Höhe, die zuerst vorhanden war in css (gesehen in Feuerwanze):

element.style{width and height}

Ich habe mich mehrere Tage damit beschäftigt und habe stattdessen bewiesen leben, weiter und delegierenund so weiter, aber keiner von ihnen funktioniert, diese Ajax-Paginierung funktioniert auch perfekt in der Post-Paginierung auf meiner Seite, aber das Widget lädt Dom-Elemente nicht neu?

Das Wichtigste für mich sind:

-Jedem der Elemente fehlt Breite und Höhe, das war in DOM CSS, zuerst wird diese Breite mit einem functions.php Enqued-Skript berechnet, das zum Beispiel so geht, wenn es 4 Spalten hat:

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);
}

Ich nenne die mysizes(); Funktion aus dem Widget PHP mit einem Tag

-Der Filter der fehlenden Kategorien, denke ich, weil er beim Laden der Paginierung die Benutzervoreinstellungen für das Widget nicht erkennt. Er erkennt es perfekt auf der ersten Seite, aber nicht auf den nachfolgenden Seiten.

Link zur Seite mit Portfolio-Widget-Paginierung, die nicht richtig funktioniert (bitte auf 2 Seite klicken, um sie anzuzeigen):

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

Link zu einer Beispielkategorie mit derselben Paginierung (Paginierung unten auf der Seite):

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

  • Sie haben ein in die Warteschlange eingereihtes functions.php-Skript erwähnt. Ist es möglich, dass dies nicht geladen wird, wenn es von Ajax aufgerufen wird?

    – Roryok

    18. Juni 2012 um 8:31 Uhr

  • Ein kurzer Blick zeigt, dass Sie zumindest die HTML-Struktur ändern. Auf der paginierten Seite haben Sie .portfolio_class zweimal verschachtelt, während das Original nur einmal ist.

    – Jure C.

    20. Juni 2012 um 10:32 Uhr

  • Ja! Jure C. Das war das Problem und ich musste die Funktion verwenden: ajaxComplete(); alles neu laden. Vielen Dank

    – José Lo

    21. Juni 2012 um 12:49 Uhr


  • @JureC. Ziehen Sie in Betracht, die Lösung in eine Antwort zu verschieben.

    – Brasilo

    6. September 2013 um 17:37 Uhr

  • nicht gefunden: framecero.com/aagantrywordpress/?cat=4

    – Sam

    10. Oktober 2013 um 17:04 Uhr

Von Jure C. Kommentar:

Ein kurzer Blick zeigt, dass Sie zumindest die HTML-Struktur ändern. Auf paginierter Seite haben Sie .portfolio_class zweimal verschachtelt, während das Original nur einmal ist.

1385460cookie-checkDom Css verloren nach jQuery Pagination WordPress-Widget

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy