scrollorama - scroll Efekte in Wordpress nutzen

  • Leider habe ich nicht zu diesem Thema finden können,
    der Einsatz von scrollorama (http://johnpolacek.github.io/scrollorama/) schlägt fehl in wordpress. Leider kann ich den Fehler oder Grund dafür nicht finden.


    Folgendes ist eingetragen:


    Das laden der jquery Dateien, diese befinden sich in einem Unterordner des child themes ->

    in der functions.php:

    PHP
    add_action('wp_enqueue_scripts', 'load_javascript_files');
    function load_javascript_files() {
            wp_enqueue_script( 'scrollorama', get_template_directory_uri() . 'js/jquery-1.9.1.min.js', array( 'jquery' ));
            wp_enqueue_script( 'scrollorama', get_template_directory_uri() . 'js/jquery.lettering-0.6.1.min.js', array( 'jquery' ));
            wp_enqueue_script( 'scrollorama', get_template_directory_uri() . 'js/jquery.scrollorama.js', array( 'jquery' ));
    }


    z.B. auf einer Seite:

    HTML
    <div class="scrollblock" id="examples-parallax">
            <h2 id="parallax1">Parallax1</h2>
            <h3 id="parallax2">Parallax2</h3>
            <h3 id="parallax3">Parallax3</h3>
        </div>


    in der header.php

    Code
    <script>
            $(document).ready(function() {
                var scrollorama = $.scrollorama({ blocks:'.scrollblock' });
                scrollorama
                    .animate('#parallax2',{ delay: 400, duration: 600, property:'top', start:800, end:-800 })
                    .animate('#parallax3',{ delay: 200, duration: 1200, property:'top', start:500, end:-500 });
            });
        </script>


    Exakt die gleiche Konstellation, funktioniert in einer normalen HTML-Seite bestens, dort werden die jquery Dateien nur anders geladen ->


    Einbinden auf einer normalen HTML Seite:

    Code
    <script src="js/jquery-1.9.1.min.js">
    </script><script src="js/jquery.lettering-0.6.1.min.js"></script>
    <script src="js/jquery.scrollorama.js"></script>

    Es würde mir sehr weiterhelfen, wenn jemand eine Idee hat oder mir sagen kann, welchen Fehler ich hier übersehe.


    Schöne Grüße,

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • ..diese befinden sich in einem Unterordner des child themes ->


    Der Pfad des Child Themes wird über [FONT=courier new]get_stylesheet_directory_uri()[/FONT] ermittelt, [FONT=courier new]get_template_directory_uri()[/FONT] ist der Pfad zum Parent Theme.

    Am Ende des Pfades ist jeweils ein / anzuhängen, also [FONT=courier new]get_stylesheet_directory_uri() . '[COLOR=#ff0000]/[/COLOR]js/jquery...
    [/FONT]
    Beim JavaScript Code würde ich [FONT=courier new][COLOR=#ff0000]jQuery[/COLOR](document).ready(function([COLOR=#ff0000]$[/COLOR]) {[/FONT] statt [FONT=courier new]$(document).ready(function() {[/FONT] empfehlen.

    Einmal editiert, zuletzt von b3317133 (11. Januar 2018 um 11:39)

  • … und ergänzend: wenn du das Skript richtigerweise über enqueue_script() lädst, fügst du keinen script-Block mehr in die header.php ein, sondern du legst beim Aufruf mit enqueue_script() fest, ob das script im Header oder im Footer geladen wird.
    Bitte nochmal im Codex nachlesen, wie enqueue_script() richtig eingesetzt wird.

    Gruß
    helix

  • Zu den [FONT=courier new]wp_enqueue_script()[/FONT] Aufrufen noch:

    1. jQuery wird automatisch von WordPress geladen, wenn [FONT=courier new]'jquery'[/FONT] als dependency angegeben wird, der erste Aufruf fällt also weg.
    2. Das [FONT=courier new]handle[/FONT] sollte bei jeder Datei unterschiedlich sein.
    3. Die Ladereihenfolge macht WordPress (oder Cache-Plugins usw.) vom Parameter [FONT=courier new]$deps[/FONT] (dependencies) abhängig, das sollte man dort beachten.

    Eine korrigierte Version des og. Codes wäre also z.B. sowas hier:

    PHP
    function load_javascript_files() {
        wp_enqueue_script( 'lettering', get_stylesheet_directory_uri() . '/js/jquery.lettering-0.6.1.min.js', array( 'jquery' ), '0.6.1' );
        wp_enqueue_script( 'scrollorama', get_stylesheet_directory_uri() . '/js/jquery.scrollorama.js', array( 'jquery', 'lettering' ), '1.0' );
    }

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!