Book Image

Moodle JavaScript Cookbook

Book Image

Moodle JavaScript Cookbook

Overview of this book

Moodle is the best e-learning solution on the block and is revolutionizing courses on the Web. Using JavaScript in Moodle is very useful to administrators and dynamic developers as it uses built-in libraries to provide the modern and dynamic experience that is expected by web users today.The Moodle JavaScript Cookbook will take you through the basics of combining Moodle with JavaScript and its various libraries and explain how JavaScript can be used along with Moodle. It will explain how to integrate Yahoo! User Interface Library (YUI) with Moodle. YUI will be the main focus of the book, and is the key to implementing modern, dynamic feature-rich interfaces to help your users get a more satisfying and productive Moodle experience. It will enable you to add effects, make forms more responsive, use AJAX and animation, all to create a richer user experience. You will be able to work through a range of YUI features, such as pulling in and displaying information from other websites, enhancing existing UI elements to make users' lives easier, and even how to add animation to your pages for a nice finishing touch.
Table of Contents (15 chapters)
Moodle JavaScript Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface

Adding a drop-down navigation menu


A slight variation to the fly-out menu is the drop-down menu. Again, this is a menu structure that many users will find familiar and will be able to use comfortably.

Getting ready

We may build on the previous recipe, as the markup will be almost identical, just with the addition of some CSS class names applied to the parent element.

How to do it...

  1. 1. This example uses a file nav_dropdown.php with the following content:

    <?php
    require_once(dirname(__FILE__) . '/../config.php');
    $PAGE->set_context(get_context_instance(CONTEXT_SYSTEM));
    $PAGE->set_url('/cook/nav_dropdown.php');
    $PAGE->requires->js('/cook/nav_dropdown.js', true);
    echo $OUTPUT->header();
    ?>
    <div id="menu" class="yui3-menu yui3-menu-horizontal yui3- menubuttonnav" style="float:left;height:100px;">
    <div class="yui3-menu-content">
    <ul>
    <li class="yui3-menuitem">
    <a class="yui3-menuitem-content" href="#">Item 1</a>
    </li>
    <li class="yui3...