Mastering jQuery

If you are a developer who is already familiar with using jQuery and wants to push your skill set further, then this book is for you. The book assumes an intermediate knowledge level of jQuery, JavaScript, HTML5, and CSS.

Uloženo v:
Podrobná bibliografie
Hlavní autor: Libby, Alex
Médium: E-kniha
Jazyk:angličtina
Vydáno: Birmingham Packt Publishing, Limited 2015
Packt Publishing
Vydání:1
Témata:
ISBN:9781783985463, 1783985461
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Obsah:
  • Cover -- Copyright -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Table of Contents -- Preface -- Chapter 1: Installing jQuery -- Downloading and installing jQuery -- Using jQuery in a development capacity -- Adding the jQuery Migrate plugin -- Using a CDN -- Using other sources to install jQuery -- Using Node JS to install jQuery -- Installing jQuery using Bower -- Using the AMD approach to load jQuery -- Customizing the downloads of jQuery from Git -- Removing redundant modules -- Using a GUI as an alternative -- Adding source map support -- Adding support for source maps -- Working with Modernizr as a fallback -- Best practices for loading jQuery -- Summary -- Chapter 2: Customizing jQuery -- Getting prepared -- Patching the library on the run -- Introducing monkey patching -- Replacing or modifying existing behaviors -- Creating a basic monkey patch -- Dissecting our monkey patch -- Considering the benefits of monkey patching -- Updating animation support in jQuery -- Exploring the requestAnimationFrame API past -- Using the requestAnimationFrame method today -- Creating our demo -- Adding WebP support to jQuery -- Getting started -- Creating our patch -- Taking things further -- Considering the pitfalls of monkey patching -- Distributing or applying patches -- Summary -- Chapter 3: Organizing Your Code -- Introducing design patterns -- Defining design patterns -- Dissecting the structure of a design pattern -- Categorizing patterns -- The Composite Pattern -- Advantages and disadvantages of the Composite Pattern -- The Adapter Pattern -- Advantages and disadvantages of the Adapter Pattern -- The Facade Pattern -- Creating a simple animation -- Advantages and disadvantages of the Façade Pattern -- The Observer Pattern -- Advantages and disadvantages of the Observer Pattern -- Creating a basic example
  • Working with CSS-based animations -- Considering the impact of the change -- Falling back on jQuery animations -- Extending our plugin -- Packaging our plugin using Bower -- Automating the provision of documentation -- Returning values from our plugin -- Exploring best practices and principles -- Summary -- Chapter 12: Using jQuery with the Node-WebKit Project -- Setting the scene -- Introducing Node-WebKit -- Operating HTML applications on a desktop -- Preparing our development environment -- Installing and building our first application -- Dissecting the package.json file -- Building our simple application -- Exploring our demo further -- Dissecting our content files -- Exploring window.js -- Dissecting the BlueImp plugin configuration -- Automating the creation of our project -- Debugging your application -- Packaging and deploying your app -- Creating packages manually -- Automating the process -- Deploying your application -- Taking things further -- Summary -- Chapter 13: Enhancing Performance in jQuery -- Understanding why performance is critical -- Monitoring the speed of jQuery using Firebug -- Automating performance monitoring -- Gaining insight using Google PageSpeed -- Linting jQuery code automatically -- Minifying code using NodeJS -- Exploring some points of note -- Working through a real example -- Working out unused JavaScript -- Implementing best practice -- Designing a strategy for performance -- Staying with the use of jQuery -- Summary -- Chapter 14: Testing jQuery -- Revisiting QUnit -- Installing QUnit -- Creating a simple demo -- Automating tests with QUnit -- Exploring best practices when using QUnit -- Summary -- Index
  • Chapter 6: Animating in jQuery -- Choosing CSS or jQuery -- Controlling the jQuery animation queue -- Fixing the problem -- Making the transition even smoother -- Using a pure CSS solution -- Improving jQuery animations -- Introducing easing functions -- Designing custom animations -- Converting to use with jQuery -- Implementing some custom animations -- Animating rollover buttons -- Exploring the code in more detail -- Animating an overlay effect -- Animating in a responsive website -- Considering animation performance on responsive sites -- Handling animation requests on a responsive site -- Animating content for mobile devices -- Improving the appearance of animations -- Implementing responsive parallax scrolling -- Building a parallax scrolling page -- Considering the implications of parallax scrolling -- Summary -- Chapter 7: Advanced Event Handling -- Introducing event handling -- Delegating events -- Revisiting the basics of event delegation -- Reworking our code -- Supporting older browsers -- Exploring a simple demonstration -- Exploring the implications of using event delegation -- Controlling delegation -- Using the stopPropagation() method as an alternative -- Using the .proxy function -- Creating and decoupling custom event types -- Creating a custom event -- Working with the Multiclick event plugin -- Namespacing events -- Summary -- Chapter 8: Using jQuery Effects -- Revisiting effects -- Exploring the differences between animation and effects -- Creating custom effects -- Exploring the animate() method as the basis for effects -- Putting custom effects into action -- Creating a clickToggle handler -- Sliding content with a slide-fade Toggle -- Applying custom easing functions to effects -- Adding a custom easing to our effect -- Using Bezier curves in effects -- Adding Bezier curve support -- Using pure CSS as an alternative
  • Adding callbacks to our effects -- Controlling content with jQuery's Promises -- Creating and managing the effect queue -- Summary -- Chapter 9: Using the Web Performance APIs -- An introduction to the Page Visibility API -- Supporting the API -- Implementing Page Visibility API -- Breaking down the API -- Detecting support for the Page Visibility API -- Providing fallback support -- Installing visibility.js -- Building the demo -- Using the API in a practical context -- Pausing video or audio -- Adding support to a CMS -- Exploring ideas for examples -- Introducing the requestAnimationFrame API -- Exploring the concept -- Viewing the API in action -- Using the requestAnimationFrame API -- Retrofitting the changes to jQuery -- Updating existing code -- Some examples of using requestAnimationFrame -- Creating a scrollable effect -- Animating the Google Maps marker -- Exploring sources of inspiration -- Summary -- Chapter 10: Manipulating Images -- Manipulating colors in images -- Adding filters using CSS3 -- Getting ready -- Creating our base page -- Changing the brightness level -- Adding a sepia filter to our image -- Exploring other filters -- Blending images using CSS3 -- Applying filters with CamanJS -- Introducing CamanJS as a plugin -- Building a simple demo -- Getting really creative -- Creating simple filters manually -- Grayscaling an image -- Adding a sepia tone -- Blending images -- Animating images with filters -- Introducing cssAnimate -- Creating a signature pad and exporting the image -- Capturing and manipulating webcam images -- Finishing up -- Summary -- Chapter 11: Authoring Advanced Plugins -- Detecting signs of a poorly developed plugin -- Introducing design patterns -- Creating or using patterns -- Designing an advanced plugin -- Rebuilding our plugin using boilerplate -- Converting animations to use CSS3 automatically
  • The Iterator Pattern -- Advantages and disadvantages of the Iterator Pattern -- The Lazy Initialization Pattern -- Advantages and disadvantages of the Lazy Initialization Pattern -- The Strategy Pattern -- Building a simple toggle effect -- Switching between actions -- Advantages and disadvantages of the Strategy Pattern -- The Proxy Pattern -- Advantages and disadvantages of the Proxy Pattern -- Builder Pattern -- Advantages and disadvantages of the Builder Pattern -- Exploring use of patterns within jQuery library -- Summary -- Chapter 4: Working with Forms -- Exploring the need for form validation -- Creating a basic form -- Starting with simple HTML5 validation -- Using HTML5 over jQuery -- Using jQuery to validate our forms -- Validating forms using regex statements -- Creating a regex validation function for e-mails -- Taking it further for URL validation -- Building a simple validation plugin -- Developing a plugin architecture for validation -- Creating our basic form -- Creating custom validators -- Localizing our content -- Centralizing our error messages -- Wrapping up development -- Noting the use of best practices -- Providing fallback support -- Creating an advanced contact form using AJAX -- Developing an advanced file upload form using jQuery -- Summary -- Chapter 5: Integrating AJAX -- Revisiting AJAX -- Defining AJAX -- Creating a simple example using AJAX -- Improving the speed of loading data with static sites -- Using localStorage to cache AJAX content -- Using callbacks to handle multiple AJAX requests -- Enhancing your code with jQuery Deferreds and Promises -- Working with Deferreds and Promises -- Creating an advanced contact form using AJAX -- Adding file upload capabilities using AJAX -- Examining the use of Promises and Deferreds in the demo -- Detailing AJAX best practices -- Summary