SlideShare a Scribd company logo
1 of 54
Download to read offline
jQuery comes to XPages

           Tweet about this event: #xpages
and mention us: @teamstudio @TLCCLTD @markyroden

                  April 23, 2013
@teamstudio
Taline Badrikian       teamstudio.com
  Marketing Director
Who we are
• Our background is in creating tools for collaborative
  computing in mid-size and large enterprises, primarily for
  Lotus Notes
• Easy-to-use tools for developers and administrators
• 2300+ active customers, 47 countries
• Offices in US, UK and Japan
• Entered mobile space in 2010 with Unplugged – easy
  mobilization of Notes apps to Blackberry, Android and iOS
Teamstudio Unplugged
• Your Mobile Domino Server – take your Notes
  apps with you!
• End users access Notes applications from
  mobile devices whether online or offline
• Leverages existing skills and technology –
  Xpages – Replication model you already know
• IBM Collaboration Solutions Award Winner 2013
Teamstudio Continuity

•   Mobile BCM application for smartphones and tablets
     – iOS, Android and BB
•   Offline access to all your BCM and
    Disaster Recovery data
•   Store plans, contacts, call trees, and more
•   Client available for download from app stores
Teamstudio

•   Visit us at IamLUG – May 6 & 7
•   TackItOn day – May 8th
    Introduction to Developing Mobile Apps with XPages
•   Next webinar – Twelve Tasks Made Easier With IBM Lotus Domino XPages,
    Mike McGarel and Paul Withers – May 21
jQuery: The World's Most Popular
JavaScript Library Comes to XPages
Your Hosts Today:




                 Howard Greenberg                                                    Paul Della-Nebbia
                      TLCC                                                                 TLCC
                    @TLCCLtd                                                             @paulDN




                                                                                                                    #XPages

       © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC   1
Upcoming and Recorded Webinars

Next Webinar on May 23rd
It’s Not Herculean: Twelve Tasks Made Easier With IBM Lotus Domino
   XPages with Paul Withers and Mike McGarel

www.tlcc.com/xpages-webinar
Same web page has a link to previous webinars




          © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC   2
TLCC XPages Offerings


• Seven XPages Courses!
      Rapid XPages Development using Application Layout and Dojo UI Controls
          Both 8.5 and 9.0 versions
      FREE !! Introduction to XPages Development
      JavaScript for XPages Development
      Developing XPages Using Domino Designer 8.5
      XPages Development 2 for Notes and Domino 8.5
      Mobile XPages for Domino 8.5
      Java 1 for XPages Developers

• Self Paced Training
   – Learn anywhere!
   – An Instructor is a click away

• Instructor Led (Private)
• TLCC Mentoring Services
               © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC   3
Upcoming Events


IamLUG in St. Louis
  May 6th and 7th … FREE!!
  Getting full

TackItOn the day after (May 8th)
  Rapid XPages Development using Application Layout and
  Dojo UI Controls
   • One full day with TLCC’s expert instructor Paul Della-Nebbia
   • TLCC’s Rapid XPages Development using Application Layout and Dojo UI
     Controls (8.5 or 9.0) self-paced course (28 hours)
   • A year of continued instructor support
  All for only $495! IamLUG exclusive offer!!
    www.iamlug.org
           © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC   4
Asking Questions




Q & A at the end!

Type in your
questions as they
come up

          © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC   5
Your Presenter Today:

                                          Dr. Marky Roden
                                          @MarkyRoden
                                          http://xomino.com




                                                                                                              #XPages

 © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC   6
jQuery - The world's most popular
JavaScript library comes to XPages


         Dr. Mark Roden
Senior Consultant, PSC Group LLC


         23rd April 2013             1
About Marky
• Over 15 years IBM Notes Domino® work
• Senior Consultant at PSC Group
  • XPages Developer
  • Project Leader
  • jQuery Specialist
• Contact Information
  •   Blog: http://www.xomino.com
  •   Email: marky@xomino.com
  •   Twitter: @markyroden
                                    www.psclistens.com   @pscgroup
  •   Skype: marky.roden
                                                                     2
Agenda
•   What is jQuery?
•   What about Dojo? When should I use jQuery?
•   How does jQuery work?
•   How do I add jQuery to my XPages?
•   What are jQuery plugins?
•   How can jQuery plugins solve my requirements


                                                   3
Agenda
•   What is jQuery?
•   What about Dojo? When should I use jQuery?
•   How does jQuery work?
•   How do I add jQuery to my XPages?
•   What are jQuery plugins?
•   How can jQuery plugins solve my requirements


                                                   4
What is jQuery anyway?
• A JavaScript library which simplifies the
  common
   every day web development tasks of Document
   Model manipulation, event handling, animation
  and
   AJAX/JSON

  Created: June 2006 by John Resig

  Removes browser dependencies
                                                   5
  Open Source (MIT License)
What is jQuery anyway?
• 66% of world’s top 10,000 websites use jQuery
  http://trends.builtwith.com/javascript (*Apr 2013)

 Used by Microsoft .Net v4 as part of the ASP.NET
 AJAX framework

 Some websites you probably know using jQuery

      Amazon                       Google
      Twitter                      Dell
      Wordpress                    Bank of America
      Stackoverflow                Drupal              6
      BestBuy                      Wordpress
What is jQuery anyway?
 • Core
   • Document Model (DOM) Manipulation
   • Simple Animations
 • UI
   • Pre-packages functional capabilities
   • Analogous to Dojo Widgets
 • Mobile
   • A unified, HTML5-based user interface system for
     all
      popular mobile device platforms, built on the
     rock-solid
      jQuery and jQuery UI foundation.                  7
Agenda
•   What is jQuery?
•   What about Dojo? When should I use jQuery?
•   How does jQuery work?
•   How do I add jQuery to my XPages?
•   What are jQuery plugins?
•   How can jQuery plugins solve my requirements


                                                   8
What about Dojo? When should I use jQuery?

• Dojo and jQuery have the same basic premise:
  • Browser compatibility / Code simplification
• Many similar capabilities.
  • DOM manipulation
  • Widgets (Date pickers, sliders etc)
• Many differences
  • Dojo intended for larger client applications
  • jQuery intended to make coding as easy as
    possible                                       9
Where’s the balance?
• Many factors determine the balance
  • Network connectivity
  • Functional requirements
  • Developmental experience with Dojo/jQuery
  • Project timeline
  • Maintainability of the application
  • jQuery v2.0 (future) will not support IE<9
    • “The entire jQuery core team instantly became giddy as they started
      ripping out oldIE support for jQuery 2.0.”
      17 Dec 2012 - Scott González (jQuery contributor)                     10
Don’t use jQuery when….
• There isn’t a justifiable reason to use it
• jQuery is an additional download (~94k)
  • Version 1.8 does allow for exclusion of code which is
    not
    necessary
• When not to use jQuery :
  • Simple DOM manipulation
  • To provide functionality which is already provided by
    Dojo
    Widgets
  • To determine runtime events in the onLoad event
  • If you are using OneUI (*not for beginners)
  • Because you don’t want to learn Dojo                    11
Use jQuery when……
• Enhanced functionality not provided by Dojo
  • Specific jQuery or jQuery UI functionality
  • Specific Animation requirements
  • Broader browser compatibility
• The business plan supports jQuery usage
• The requirements are best suited to a jQuery
  solution

       >>>>> The Plugin Community <<<<           12
Agenda
•   What is jQuery?
•   What about Dojo? When should I use jQuery?
•   How does jQuery work?
•   How do I add jQuery to my XPages?
•   What are jQuery plugins?
•   How can jQuery plugins solve my requirements


                                                   13
How does jQuery work - API References
 API references                               Examples
Selectors             (“ELEMENT”)        (“.class”)              (“#idTag”)

Attributes            .attr()            .html()                 .toggleClass()
Traversing            .children()        .closest()              .find()
Manipulation          .appendTo()        .css()                  .val()
CSS                   .height()          .position()             .width()
Events                .blur()            .bind()                 .keypress()
Effects               .animate()         .fadeIn()               .slideToggle()
Ajax                  .get()             .getJSON()              .serialize()
Utilities             .grep()            .each()                 .inArray()
Internals             .error()           .pushStack()            .context()

                  Example API reference methods and properties                    14
                              http://api.jquery.com
Select and conquer
 • 1) Select the DOM elements you wish to affect

      $(‘.myClass’)             Select all elements with a class “myClass”
 • 2) Concatenate the API reference to use

      $(‘.myClass’).css(‘display’, ‘none’)
                                                 Set the display style to none
 • 3) Execute


                                                                                 15
Chaining
 • All methods/properties return a jQuery object
   • Allows for chaining of *all* other API references
   $("p")                        Select All Paragraph nodes
         .find(":contains('t')") Within each node find all words
                                 containing the letter t
         .css('color','red')     Color those matches red
 • Advantages
   • Object reuse: Lower memory consumption and
     faster
   • Shorter more manageable code
   • Easier syntax for beginners
   • Easy plugin creation                                          16
Agenda
•   What is jQuery?
•   What about Dojo? When should I use jQuery?
•   How does jQuery work?
•   How do I add jQuery to my XPages?
•   What are jQuery plugins?
•   How can jQuery plugins solve my requirements


                                                   17
Adding jQuery to the application
 • jQuery is a Client Side JavaScript library
   • Can be added to the application
   • Can be referenced externally to the database

 • jQuery plugins contain images and style sheets
   • A complete miniaturized application
   • More than just JavaScript Code
   • Could be complicated to maintain if all files
     were added
     as resources                                    18
Adding jQuery to the database
 • Download the jQuery library
   • http://jquery.com
   • Save in a “js” folder on your computer




                                              19
Adding jQuery to the database
 • Don’t add it to the database as a file resource
 • Don’t add it to the database as a js library
 • Domino Designer in Eclipse (DDE) reads and
   processes resources
   • More time consuming (slows DDE)
 • Less maintainable



                                                     20
Adding jQuery to the database
 • The WebContent folder
   • Acts like the root folder within your database
   • All files referenced to the .nsf/ in the URL
   • Much easier to maintain files in one place
   • Makes jQuery plugin management much
     easier



                                                      21
Adding jQuery to the database
 • Drag and Drop the js folder into WebContent




                                                 22
Adding jQuery to the application
 • Directly added to the XPage source panel
  <script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>




                                                                          23
Adding jQuery to the application
 • Through a Theme
   <resource>
      <content-type>application/x-javascript</content-type>
      <href>js/jquery-1.8.3.min.js</href>
   </resource>




                                                              24
Adding jQuery to your XPages - Example
• Modernizing a notes view




                                         25
Adding User interactivity
• Add a basic viewPanel control to your XPage


                              An un-styled viewPanel

                              Functional but not aesthetically
                              pleasing




                                                                 26
Adding User interactivity - demonstration
• Using jQuery, user interactivity can be added to
  a viewPanel to make it more functional and
  improve the user experience.




      The following link has an example of the demonstration

             http://bit.ly/MarkyIC13Demo                       27
Agenda
•   What is jQuery?
•   What about Dojo? When should I use jQuery?
•   How does jQuery work?
•   How do I add jQuery to my XPages?
•   What are jQuery plugins?
•   How can jQuery plugins solve my requirements


                                                   28
jQuery plugins
• Extensions of the jQuery API code base
• The plugin is called in the same was as a normal
  API reference
• $(‘.myClass’).doSomething()
• To achieve the desired functionality additional resources
  are often necessary
  • CSS
  • Images
  • Other JavaScript files


                                                              29
jQuery plugins
• Additional JavaScript Libraries
  • May also include
    • Images
    • CSS
  • Added to your XPage database
    through WebContent folder as
    before


                                    30
jQuery plugins - example
• Joyride.js – Website feature tour

  • Requirement:
    • Provide a visual cue for website users
      to the new features available
    • Make it simple to use
    • Make it one time only




                                               31
jQuery plugins - example
 • Joyride – Website feature tour




By clicking a button
users are guided around
the new website


                                    32
jQuery plugins - example
• Joyride – Website feature tour




        All the properties available with the Joyride plugin
                                                               33
jQuery plugins
• For more information on how to add a jQuery
  plugin to your database:
• Notes in 9 Episode 74
  • Getting started with jQuery Plugins in XPages

                http://bit.ly/Nin9Ep74
Agenda
•   What is jQuery?
•   What about Dojo? When should I use jQuery?
•   How does jQuery work?
•   How do I add jQuery to my XPages?
•   What are jQuery plugins?
•   How can jQuery plugins solve my requirements
Functionality in a box
• Yesterday your boss could have said:
  • “I need a slideshow adding to the website by tomorrow, needs
    to allow users to see thumbnails and cycle through them
    quickly…..”
• You would have panicked
• You could have remembered Google is your friend..
 and found a great reference on jQuery slideshows
• http://speckyboy.com/2009/06/03/15-amazing-
  jquery-image-galleryslideshow-plugins-and-tutorials/
• You would then have responded: “Which one sir?”
Functionality in a box
• Over 3000 jQuery plugins created and registered

  Charting                      Modal Window
  Form Validation               Mobile
  Responsive Layouts            Web Typography
  Sliders                       Animation
  Galleries                     Tables
  Carousels                     Form Select and Combo
  Time and Date Pickers

  And almost all of them are FREE
Demonstrations
• Demonstrations of jQuery plugins in XPages can
  be found at:

    http://www.xomino.com/IBMConnect13Demo

              http://demo.xomino.com
• Questions and Answers

http://www.xomino.com
http://demo.xomino.com
 twitter: @MarkyRoden
Resources

• www.jquery.com
     Download the latest version
     Review the documentation
     Look through the Tutorials
  www.jqueryui.com
     Fantastic working examples/code
     Themebuilder
  www.jquerymobile.com
     Documentation
     Example code
     Example builder
  www.stackoverflow.com (*April 2013)
    ~305,000 questions/answers tagged jQuery !
     (~4,750 questions tagged Dojo)
     (~1250 questions tagged XPages)
Questions????




Use the Q&A pane in
WebEx to ask questions

We will answer your
questions verbally




         © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC   7
Question and Answer Time!




                                      Howard Greenberg                             Paul Della-Nebbia                         Taline Badrikian
      Mark Roden
 DCLUG, April 24th                  IamLUG in St. Louis, May 6th -8th                                                             Developer2013 in
                                                                                                                                  Vegas, April 30
                                                                                 TackItOn - Rapid
                                                                                 XPages
                                                                                 Development using
                                                                                 App Layout and
                                                                                 Dojo UI Controls
www.meetup.com/
DC-Lotus-Professionals                               www.iamlug.org
                                                                                                                                  developer2013.com

 TLCC Questions?                                                                               Teamstudio Questions?
 howardg@tlcc.com paul@tlcc.com                                                                contactus@teamstudio.com
 888-241-8522 or 561-953-0095                                                                  877-228-6178
              © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC   8

More Related Content

What's hot

Web Components v1
Web Components v1Web Components v1
Web Components v1Mike Wilcox
 
Real World Web components
Real World Web componentsReal World Web components
Real World Web componentsJarrod Overson
 
jQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and FuturejQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and FutureRichard Worth
 
Angular or Backbone: Go Mobile!
Angular or Backbone: Go Mobile!Angular or Backbone: Go Mobile!
Angular or Backbone: Go Mobile!Doris Chen
 
Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3Karambir Singh Nain
 
JMP402 Master Class: Managed beans and XPages: Your Time Is Now
JMP402 Master Class: Managed beans and XPages: Your Time Is NowJMP402 Master Class: Managed beans and XPages: Your Time Is Now
JMP402 Master Class: Managed beans and XPages: Your Time Is NowRussell Maher
 
Harness jQuery Templates and Data Link
Harness jQuery Templates and Data LinkHarness jQuery Templates and Data Link
Harness jQuery Templates and Data LinkBorisMoore
 
Responsive Layout Frameworks for XPages Application UI
Responsive Layout Frameworks for XPages Application UIResponsive Layout Frameworks for XPages Application UI
Responsive Layout Frameworks for XPages Application UIChris Toohey
 
Flexible UI Components for a Multi-Framework World
Flexible UI Components for a Multi-Framework WorldFlexible UI Components for a Multi-Framework World
Flexible UI Components for a Multi-Framework WorldKevin Ball
 
Using Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the WebUsing Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the Webphilogb
 
Building Web Sites that Work Everywhere
Building Web Sites that Work EverywhereBuilding Web Sites that Work Everywhere
Building Web Sites that Work EverywhereDoris Chen
 
HTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web DevelopmentHTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web DevelopmentTilak Joshi
 
Tools For jQuery Application Architecture (Extended Slides)
Tools For jQuery Application Architecture (Extended Slides)Tools For jQuery Application Architecture (Extended Slides)
Tools For jQuery Application Architecture (Extended Slides)Addy Osmani
 
XPages and Java (DanNotes 50th conference, November 2013)
XPages and Java (DanNotes 50th conference, November 2013)XPages and Java (DanNotes 50th conference, November 2013)
XPages and Java (DanNotes 50th conference, November 2013)Per Henrik Lausten
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQueryAlek Davis
 
Improving the Responsive Web Design Process in 2016
Improving the Responsive Web Design Process in 2016Improving the Responsive Web Design Process in 2016
Improving the Responsive Web Design Process in 2016Cristina Chumillas
 
Engineering the New LinkedIn Profile
Engineering the New LinkedIn ProfileEngineering the New LinkedIn Profile
Engineering the New LinkedIn ProfileJosh Clemm
 
Building Mobile Web Apps with jQM and Cordova on Azure
Building Mobile Web Apps with jQM and Cordova on AzureBuilding Mobile Web Apps with jQM and Cordova on Azure
Building Mobile Web Apps with jQM and Cordova on AzureBrian Lyttle
 
How to Use WebVR to Enhance the Web Experience
How to Use WebVR to Enhance the Web ExperienceHow to Use WebVR to Enhance the Web Experience
How to Use WebVR to Enhance the Web ExperienceFITC
 

What's hot (20)

Web Components v1
Web Components v1Web Components v1
Web Components v1
 
Real World Web components
Real World Web componentsReal World Web components
Real World Web components
 
jQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and FuturejQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and Future
 
Angular or Backbone: Go Mobile!
Angular or Backbone: Go Mobile!Angular or Backbone: Go Mobile!
Angular or Backbone: Go Mobile!
 
Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3
 
JMP402 Master Class: Managed beans and XPages: Your Time Is Now
JMP402 Master Class: Managed beans and XPages: Your Time Is NowJMP402 Master Class: Managed beans and XPages: Your Time Is Now
JMP402 Master Class: Managed beans and XPages: Your Time Is Now
 
Dojo & HTML5
Dojo & HTML5Dojo & HTML5
Dojo & HTML5
 
Harness jQuery Templates and Data Link
Harness jQuery Templates and Data LinkHarness jQuery Templates and Data Link
Harness jQuery Templates and Data Link
 
Responsive Layout Frameworks for XPages Application UI
Responsive Layout Frameworks for XPages Application UIResponsive Layout Frameworks for XPages Application UI
Responsive Layout Frameworks for XPages Application UI
 
Flexible UI Components for a Multi-Framework World
Flexible UI Components for a Multi-Framework WorldFlexible UI Components for a Multi-Framework World
Flexible UI Components for a Multi-Framework World
 
Using Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the WebUsing Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the Web
 
Building Web Sites that Work Everywhere
Building Web Sites that Work EverywhereBuilding Web Sites that Work Everywhere
Building Web Sites that Work Everywhere
 
HTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web DevelopmentHTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web Development
 
Tools For jQuery Application Architecture (Extended Slides)
Tools For jQuery Application Architecture (Extended Slides)Tools For jQuery Application Architecture (Extended Slides)
Tools For jQuery Application Architecture (Extended Slides)
 
XPages and Java (DanNotes 50th conference, November 2013)
XPages and Java (DanNotes 50th conference, November 2013)XPages and Java (DanNotes 50th conference, November 2013)
XPages and Java (DanNotes 50th conference, November 2013)
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
Improving the Responsive Web Design Process in 2016
Improving the Responsive Web Design Process in 2016Improving the Responsive Web Design Process in 2016
Improving the Responsive Web Design Process in 2016
 
Engineering the New LinkedIn Profile
Engineering the New LinkedIn ProfileEngineering the New LinkedIn Profile
Engineering the New LinkedIn Profile
 
Building Mobile Web Apps with jQM and Cordova on Azure
Building Mobile Web Apps with jQM and Cordova on AzureBuilding Mobile Web Apps with jQM and Cordova on Azure
Building Mobile Web Apps with jQM and Cordova on Azure
 
How to Use WebVR to Enhance the Web Experience
How to Use WebVR to Enhance the Web ExperienceHow to Use WebVR to Enhance the Web Experience
How to Use WebVR to Enhance the Web Experience
 

Similar to jQuery Comes to XPages

State of jQuery - AspDotNetStorefront Conference
State of jQuery - AspDotNetStorefront ConferenceState of jQuery - AspDotNetStorefront Conference
State of jQuery - AspDotNetStorefront Conferencedmethvin
 
jQuery 1.4-1.6 Best new features
jQuery 1.4-1.6 Best new featuresjQuery 1.4-1.6 Best new features
jQuery 1.4-1.6 Best new featuresRyan Blunden
 
John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)Jia Mi
 
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.WO Community
 
jQueryTO: State of jQuery March 2013
jQueryTO: State of jQuery March 2013jQueryTO: State of jQuery March 2013
jQueryTO: State of jQuery March 2013dmethvin
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive uiPaul van Zyl
 
JavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) uploadJavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) uploadRuss Fustino
 
JavaOne Latin America Participate in Shaping Java's Future
JavaOne Latin America Participate in Shaping Java's Future JavaOne Latin America Participate in Shaping Java's Future
JavaOne Latin America Participate in Shaping Java's Future Heather VanCura
 
The State of Frontend
The State of FrontendThe State of Frontend
The State of FrontendJimit Shah
 
It's Not Infernal: Dante's Nine Circles of XPages Heaven
It's Not Infernal: Dante's Nine Circles of XPages HeavenIt's Not Infernal: Dante's Nine Circles of XPages Heaven
It's Not Infernal: Dante's Nine Circles of XPages HeavenTeamstudio
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesTeamstudio
 
J query mobile tech talk
J query mobile tech talkJ query mobile tech talk
J query mobile tech talkwoliverj
 
jQuery - Chapter 1 - Introduction
 jQuery - Chapter 1 - Introduction jQuery - Chapter 1 - Introduction
jQuery - Chapter 1 - IntroductionWebStackAcademy
 
jQuery Conference 2012 keynote
jQuery Conference 2012 keynotejQuery Conference 2012 keynote
jQuery Conference 2012 keynotedmethvin
 
Angular JS - Introduction
Angular JS - IntroductionAngular JS - Introduction
Angular JS - IntroductionSagar Acharya
 
Lesson learned from 3 years with hybrid apps
Lesson learned from 3 years with hybrid appsLesson learned from 3 years with hybrid apps
Lesson learned from 3 years with hybrid appsPatrik Malmquist
 

Similar to jQuery Comes to XPages (20)

State of jQuery - AspDotNetStorefront Conference
State of jQuery - AspDotNetStorefront ConferenceState of jQuery - AspDotNetStorefront Conference
State of jQuery - AspDotNetStorefront Conference
 
jQuery 1.4-1.6 Best new features
jQuery 1.4-1.6 Best new featuresjQuery 1.4-1.6 Best new features
jQuery 1.4-1.6 Best new features
 
John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)
 
Presentation
PresentationPresentation
Presentation
 
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
Beyond Fluffy Bunny. How I leveraged WebObjects in my lean startup.
 
jQueryTO: State of jQuery March 2013
jQueryTO: State of jQuery March 2013jQueryTO: State of jQuery March 2013
jQueryTO: State of jQuery March 2013
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive ui
 
JavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) uploadJavaScript for ASP.NET programmers (webcast) upload
JavaScript for ASP.NET programmers (webcast) upload
 
Jquery react angular
Jquery react angularJquery react angular
Jquery react angular
 
JavaOne Latin America Participate in Shaping Java's Future
JavaOne Latin America Participate in Shaping Java's Future JavaOne Latin America Participate in Shaping Java's Future
JavaOne Latin America Participate in Shaping Java's Future
 
The State of Frontend
The State of FrontendThe State of Frontend
The State of Frontend
 
May 2014-webinar
May 2014-webinarMay 2014-webinar
May 2014-webinar
 
It's Not Infernal: Dante's Nine Circles of XPages Heaven
It's Not Infernal: Dante's Nine Circles of XPages HeavenIt's Not Infernal: Dante's Nine Circles of XPages Heaven
It's Not Infernal: Dante's Nine Circles of XPages Heaven
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best Practices
 
J query mobile tech talk
J query mobile tech talkJ query mobile tech talk
J query mobile tech talk
 
jQuery - Chapter 1 - Introduction
 jQuery - Chapter 1 - Introduction jQuery - Chapter 1 - Introduction
jQuery - Chapter 1 - Introduction
 
jQuery Conference 2012 keynote
jQuery Conference 2012 keynotejQuery Conference 2012 keynote
jQuery Conference 2012 keynote
 
MWLUG 2016 - AD106
MWLUG 2016 - AD106MWLUG 2016 - AD106
MWLUG 2016 - AD106
 
Angular JS - Introduction
Angular JS - IntroductionAngular JS - Introduction
Angular JS - Introduction
 
Lesson learned from 3 years with hybrid apps
Lesson learned from 3 years with hybrid appsLesson learned from 3 years with hybrid apps
Lesson learned from 3 years with hybrid apps
 

More from Teamstudio

Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingSearch Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingTeamstudio
 
SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!Teamstudio
 
Back from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerBack from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerTeamstudio
 
Understand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationUnderstand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationTeamstudio
 
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8Teamstudio
 
Marty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth DimensionallyMarty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth DimensionallyTeamstudio
 
IBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapIBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapTeamstudio
 
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...Teamstudio
 
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Teamstudio
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityExpanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityTeamstudio
 
Optimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveOptimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveTeamstudio
 
Getting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino APIGetting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino APITeamstudio
 
Understand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorUnderstand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorTeamstudio
 
Building Responsive Applications Using XPages
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPagesTeamstudio
 
Using Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsUsing Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsTeamstudio
 
Ask the XPages Experts
Ask the XPages ExpertsAsk the XPages Experts
Ask the XPages ExpertsTeamstudio
 
Everything XControls
Everything XControlsEverything XControls
Everything XControlsTeamstudio
 
Move Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneMove Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneTeamstudio
 
An Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternAn Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternTeamstudio
 
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...Teamstudio
 

More from Teamstudio (20)

Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingSearch Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
 
SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!
 
Back from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerBack from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good Server
 
Understand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationUnderstand Usage with Detailed Access Information
Understand Usage with Detailed Access Information
 
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
 
Marty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth DimensionallyMarty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth Dimensionally
 
IBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapIBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino Roadmap
 
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
 
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityExpanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate Usability
 
Optimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveOptimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep Dive
 
Getting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino APIGetting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino API
 
Understand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorUnderstand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage Auditor
 
Building Responsive Applications Using XPages
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPages
 
Using Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsUsing Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino Apps
 
Ask the XPages Experts
Ask the XPages ExpertsAsk the XPages Experts
Ask the XPages Experts
 
Everything XControls
Everything XControlsEverything XControls
Everything XControls
 
Move Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneMove Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast Lane
 
An Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternAn Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller Pattern
 
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
 

jQuery Comes to XPages

  • 1. jQuery comes to XPages Tweet about this event: #xpages and mention us: @teamstudio @TLCCLTD @markyroden April 23, 2013
  • 2. @teamstudio Taline Badrikian teamstudio.com Marketing Director
  • 3. Who we are • Our background is in creating tools for collaborative computing in mid-size and large enterprises, primarily for Lotus Notes • Easy-to-use tools for developers and administrators • 2300+ active customers, 47 countries • Offices in US, UK and Japan • Entered mobile space in 2010 with Unplugged – easy mobilization of Notes apps to Blackberry, Android and iOS
  • 4. Teamstudio Unplugged • Your Mobile Domino Server – take your Notes apps with you! • End users access Notes applications from mobile devices whether online or offline • Leverages existing skills and technology – Xpages – Replication model you already know • IBM Collaboration Solutions Award Winner 2013
  • 5. Teamstudio Continuity • Mobile BCM application for smartphones and tablets – iOS, Android and BB • Offline access to all your BCM and Disaster Recovery data • Store plans, contacts, call trees, and more • Client available for download from app stores
  • 6. Teamstudio • Visit us at IamLUG – May 6 & 7 • TackItOn day – May 8th Introduction to Developing Mobile Apps with XPages • Next webinar – Twelve Tasks Made Easier With IBM Lotus Domino XPages, Mike McGarel and Paul Withers – May 21
  • 7. jQuery: The World's Most Popular JavaScript Library Comes to XPages Your Hosts Today: Howard Greenberg Paul Della-Nebbia TLCC TLCC @TLCCLtd @paulDN #XPages © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC 1
  • 8. Upcoming and Recorded Webinars Next Webinar on May 23rd It’s Not Herculean: Twelve Tasks Made Easier With IBM Lotus Domino XPages with Paul Withers and Mike McGarel www.tlcc.com/xpages-webinar Same web page has a link to previous webinars © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC 2
  • 9. TLCC XPages Offerings • Seven XPages Courses! Rapid XPages Development using Application Layout and Dojo UI Controls Both 8.5 and 9.0 versions FREE !! Introduction to XPages Development JavaScript for XPages Development Developing XPages Using Domino Designer 8.5 XPages Development 2 for Notes and Domino 8.5 Mobile XPages for Domino 8.5 Java 1 for XPages Developers • Self Paced Training – Learn anywhere! – An Instructor is a click away • Instructor Led (Private) • TLCC Mentoring Services © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC 3
  • 10. Upcoming Events IamLUG in St. Louis May 6th and 7th … FREE!! Getting full TackItOn the day after (May 8th) Rapid XPages Development using Application Layout and Dojo UI Controls • One full day with TLCC’s expert instructor Paul Della-Nebbia • TLCC’s Rapid XPages Development using Application Layout and Dojo UI Controls (8.5 or 9.0) self-paced course (28 hours) • A year of continued instructor support All for only $495! IamLUG exclusive offer!! www.iamlug.org © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC 4
  • 11. Asking Questions Q & A at the end! Type in your questions as they come up © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC 5
  • 12. Your Presenter Today: Dr. Marky Roden @MarkyRoden http://xomino.com #XPages © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC 6
  • 13. jQuery - The world's most popular JavaScript library comes to XPages Dr. Mark Roden Senior Consultant, PSC Group LLC 23rd April 2013 1
  • 14. About Marky • Over 15 years IBM Notes Domino® work • Senior Consultant at PSC Group • XPages Developer • Project Leader • jQuery Specialist • Contact Information • Blog: http://www.xomino.com • Email: marky@xomino.com • Twitter: @markyroden www.psclistens.com @pscgroup • Skype: marky.roden 2
  • 15. Agenda • What is jQuery? • What about Dojo? When should I use jQuery? • How does jQuery work? • How do I add jQuery to my XPages? • What are jQuery plugins? • How can jQuery plugins solve my requirements 3
  • 16. Agenda • What is jQuery? • What about Dojo? When should I use jQuery? • How does jQuery work? • How do I add jQuery to my XPages? • What are jQuery plugins? • How can jQuery plugins solve my requirements 4
  • 17. What is jQuery anyway? • A JavaScript library which simplifies the common every day web development tasks of Document Model manipulation, event handling, animation and AJAX/JSON Created: June 2006 by John Resig Removes browser dependencies 5 Open Source (MIT License)
  • 18. What is jQuery anyway? • 66% of world’s top 10,000 websites use jQuery http://trends.builtwith.com/javascript (*Apr 2013) Used by Microsoft .Net v4 as part of the ASP.NET AJAX framework Some websites you probably know using jQuery Amazon Google Twitter Dell Wordpress Bank of America Stackoverflow Drupal 6 BestBuy Wordpress
  • 19. What is jQuery anyway? • Core • Document Model (DOM) Manipulation • Simple Animations • UI • Pre-packages functional capabilities • Analogous to Dojo Widgets • Mobile • A unified, HTML5-based user interface system for all popular mobile device platforms, built on the rock-solid jQuery and jQuery UI foundation. 7
  • 20. Agenda • What is jQuery? • What about Dojo? When should I use jQuery? • How does jQuery work? • How do I add jQuery to my XPages? • What are jQuery plugins? • How can jQuery plugins solve my requirements 8
  • 21. What about Dojo? When should I use jQuery? • Dojo and jQuery have the same basic premise: • Browser compatibility / Code simplification • Many similar capabilities. • DOM manipulation • Widgets (Date pickers, sliders etc) • Many differences • Dojo intended for larger client applications • jQuery intended to make coding as easy as possible 9
  • 22. Where’s the balance? • Many factors determine the balance • Network connectivity • Functional requirements • Developmental experience with Dojo/jQuery • Project timeline • Maintainability of the application • jQuery v2.0 (future) will not support IE<9 • “The entire jQuery core team instantly became giddy as they started ripping out oldIE support for jQuery 2.0.” 17 Dec 2012 - Scott González (jQuery contributor) 10
  • 23. Don’t use jQuery when…. • There isn’t a justifiable reason to use it • jQuery is an additional download (~94k) • Version 1.8 does allow for exclusion of code which is not necessary • When not to use jQuery : • Simple DOM manipulation • To provide functionality which is already provided by Dojo Widgets • To determine runtime events in the onLoad event • If you are using OneUI (*not for beginners) • Because you don’t want to learn Dojo 11
  • 24. Use jQuery when…… • Enhanced functionality not provided by Dojo • Specific jQuery or jQuery UI functionality • Specific Animation requirements • Broader browser compatibility • The business plan supports jQuery usage • The requirements are best suited to a jQuery solution >>>>> The Plugin Community <<<< 12
  • 25. Agenda • What is jQuery? • What about Dojo? When should I use jQuery? • How does jQuery work? • How do I add jQuery to my XPages? • What are jQuery plugins? • How can jQuery plugins solve my requirements 13
  • 26. How does jQuery work - API References API references Examples Selectors (“ELEMENT”) (“.class”) (“#idTag”) Attributes .attr() .html() .toggleClass() Traversing .children() .closest() .find() Manipulation .appendTo() .css() .val() CSS .height() .position() .width() Events .blur() .bind() .keypress() Effects .animate() .fadeIn() .slideToggle() Ajax .get() .getJSON() .serialize() Utilities .grep() .each() .inArray() Internals .error() .pushStack() .context() Example API reference methods and properties 14 http://api.jquery.com
  • 27. Select and conquer • 1) Select the DOM elements you wish to affect $(‘.myClass’) Select all elements with a class “myClass” • 2) Concatenate the API reference to use $(‘.myClass’).css(‘display’, ‘none’) Set the display style to none • 3) Execute 15
  • 28. Chaining • All methods/properties return a jQuery object • Allows for chaining of *all* other API references $("p") Select All Paragraph nodes .find(":contains('t')") Within each node find all words containing the letter t .css('color','red') Color those matches red • Advantages • Object reuse: Lower memory consumption and faster • Shorter more manageable code • Easier syntax for beginners • Easy plugin creation 16
  • 29. Agenda • What is jQuery? • What about Dojo? When should I use jQuery? • How does jQuery work? • How do I add jQuery to my XPages? • What are jQuery plugins? • How can jQuery plugins solve my requirements 17
  • 30. Adding jQuery to the application • jQuery is a Client Side JavaScript library • Can be added to the application • Can be referenced externally to the database • jQuery plugins contain images and style sheets • A complete miniaturized application • More than just JavaScript Code • Could be complicated to maintain if all files were added as resources 18
  • 31. Adding jQuery to the database • Download the jQuery library • http://jquery.com • Save in a “js” folder on your computer 19
  • 32. Adding jQuery to the database • Don’t add it to the database as a file resource • Don’t add it to the database as a js library • Domino Designer in Eclipse (DDE) reads and processes resources • More time consuming (slows DDE) • Less maintainable 20
  • 33. Adding jQuery to the database • The WebContent folder • Acts like the root folder within your database • All files referenced to the .nsf/ in the URL • Much easier to maintain files in one place • Makes jQuery plugin management much easier 21
  • 34. Adding jQuery to the database • Drag and Drop the js folder into WebContent 22
  • 35. Adding jQuery to the application • Directly added to the XPage source panel <script type="text/javascript" src="js/jquery-1.8.3.min.js"></script> 23
  • 36. Adding jQuery to the application • Through a Theme <resource> <content-type>application/x-javascript</content-type> <href>js/jquery-1.8.3.min.js</href> </resource> 24
  • 37. Adding jQuery to your XPages - Example • Modernizing a notes view 25
  • 38. Adding User interactivity • Add a basic viewPanel control to your XPage An un-styled viewPanel Functional but not aesthetically pleasing 26
  • 39. Adding User interactivity - demonstration • Using jQuery, user interactivity can be added to a viewPanel to make it more functional and improve the user experience. The following link has an example of the demonstration http://bit.ly/MarkyIC13Demo 27
  • 40. Agenda • What is jQuery? • What about Dojo? When should I use jQuery? • How does jQuery work? • How do I add jQuery to my XPages? • What are jQuery plugins? • How can jQuery plugins solve my requirements 28
  • 41. jQuery plugins • Extensions of the jQuery API code base • The plugin is called in the same was as a normal API reference • $(‘.myClass’).doSomething() • To achieve the desired functionality additional resources are often necessary • CSS • Images • Other JavaScript files 29
  • 42. jQuery plugins • Additional JavaScript Libraries • May also include • Images • CSS • Added to your XPage database through WebContent folder as before 30
  • 43. jQuery plugins - example • Joyride.js – Website feature tour • Requirement: • Provide a visual cue for website users to the new features available • Make it simple to use • Make it one time only 31
  • 44. jQuery plugins - example • Joyride – Website feature tour By clicking a button users are guided around the new website 32
  • 45. jQuery plugins - example • Joyride – Website feature tour All the properties available with the Joyride plugin 33
  • 46. jQuery plugins • For more information on how to add a jQuery plugin to your database: • Notes in 9 Episode 74 • Getting started with jQuery Plugins in XPages http://bit.ly/Nin9Ep74
  • 47. Agenda • What is jQuery? • What about Dojo? When should I use jQuery? • How does jQuery work? • How do I add jQuery to my XPages? • What are jQuery plugins? • How can jQuery plugins solve my requirements
  • 48. Functionality in a box • Yesterday your boss could have said: • “I need a slideshow adding to the website by tomorrow, needs to allow users to see thumbnails and cycle through them quickly…..” • You would have panicked • You could have remembered Google is your friend.. and found a great reference on jQuery slideshows • http://speckyboy.com/2009/06/03/15-amazing- jquery-image-galleryslideshow-plugins-and-tutorials/ • You would then have responded: “Which one sir?”
  • 49. Functionality in a box • Over 3000 jQuery plugins created and registered Charting Modal Window Form Validation Mobile Responsive Layouts Web Typography Sliders Animation Galleries Tables Carousels Form Select and Combo Time and Date Pickers And almost all of them are FREE
  • 50. Demonstrations • Demonstrations of jQuery plugins in XPages can be found at: http://www.xomino.com/IBMConnect13Demo http://demo.xomino.com
  • 51. • Questions and Answers http://www.xomino.com http://demo.xomino.com twitter: @MarkyRoden
  • 52. Resources • www.jquery.com Download the latest version Review the documentation Look through the Tutorials www.jqueryui.com Fantastic working examples/code Themebuilder www.jquerymobile.com Documentation Example code Example builder www.stackoverflow.com (*April 2013) ~305,000 questions/answers tagged jQuery ! (~4,750 questions tagged Dojo) (~1250 questions tagged XPages)
  • 53. Questions???? Use the Q&A pane in WebEx to ask questions We will answer your questions verbally © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC 7
  • 54. Question and Answer Time! Howard Greenberg Paul Della-Nebbia Taline Badrikian Mark Roden DCLUG, April 24th IamLUG in St. Louis, May 6th -8th Developer2013 in Vegas, April 30 TackItOn - Rapid XPages Development using App Layout and Dojo UI Controls www.meetup.com/ DC-Lotus-Professionals www.iamlug.org developer2013.com TLCC Questions? Teamstudio Questions? howardg@tlcc.com paul@tlcc.com contactus@teamstudio.com 888-241-8522 or 561-953-0095 877-228-6178 © 2013 The Learning Continuum Company, Ltd – This material can not be reproduced or distributed without the express permission of TLCC 8