SlideShare ist ein Scribd-Unternehmen logo
1 von 35
jQuery 5 – jQuery UI
By- Manish Singh
Topics in This Section
• Overview
• Installation and Setup
• Widgets
– Static tabbed panels
– Ajax tabbed panels
– Accordion panels
– Date picker
– Slider
– Progress bar
Overview
• Set of rich GUI elements and effects
– Tabbed panels, slider, etc
– Effects similar to Scripaculous
– Drag and drop API
• Pros
– Official part of jQuery
– Well tested
– Very clean design
– Many still show meaningful results if JavaScript
disabled
– Theming framework
• Cons
– No autocompleter (!)
– Not as extensive as Dojo, ext/JS, or YUI
Downloading
• Download custom bundle
– http://jqueryui.com/download
– Select widgets and effects you want
– Press “Download” to download ZIP file of result
• Unzip
– Unzip result into location of your choice
• Download additional themes
– http://jqueryui.com/download
– Deselect all widgets and options, choose different theme
• You can also interactively build a customized theme
– Unzip and copy entries in “css” folder to “css” folder of
original download
• Bookmark the documentation
– http://docs.jquery.com/UI/
Installing Files
• Load normal jQuery as before
– jQuery UI download gives an additional copy in “js”
folder, so if you are using jQuery UI, one download
from jqueryui.com is sufficient
• As discussed in previous sections, it is common to
rename jQuery-1.3.x.min.js to jQuery.js to simplify
upgrades
• Copy jQuery-ui-1.7.x.custom.min.js
– E.g., copy download_folder/js/jQuery-ui-
1.7.x.custom.min.js to WebContent/scripts
– It is common to leave detailed name for this file,
since UI capabilities change from version to version
• Copy CSS “theme” folder
– E.g., copy download_folder/css/ui-lightness to
WebContent/css/
Setting Up Page: Overview
• Load required jQuery UI files
– jquery.js (renamed from jquery-
1.3.2.min.js)
– jquery-ui-1.7.1.custom.min.js
– Any custom CSS files your app uses
• Load your files that use jQuery UI
– Any custom JavaScript files your app
uses
– themename/jquery-ui-
1.7.1.custom.min.css
Setting Up Page: Example
<link rel="stylesheet“ href="./css/ui-
lightness/jquery-ui-1.7.1.custom.css“
type="text/css"/>
<link rel="stylesheet“ href="./css/sample-
styles.css“ type="text/css"/>
<script src="./scripts/jquery.js“
type="text/javascript"></script>
<script src="./scripts/jquery-ui-
1.7.1.custom.min.js“
type="text/javascript"></script>
<script src="./scripts/jquery-ui-examples.js“
type="text/javascript"></script>
Tabbed Panels with Static
Content
• Idea
– Tabbed panel where clicking tabs changes content inside
• HTML
– Make a div container to hold the tabs
• <div id="main-tabbed-panel-div">…</div>
– Include a ul list containing internal hyperlinks
• <ul>
<li><a href="#panel1">Go to Panel 1</a></li>
<li><a href="#panel2">Go to Panel 2</a></li>
</ul>
– Include divs whose ids match the href values (minus “#”)
• <div id="panel1">Content for panel 1</div>
<div id="panel2">Content for panel 2</div>
• Basic JavaScript
– Call “tabs()” on the div container
• $("#main-tabbed-panel-div").tabs();
Example: HTML
<div id="static-tabbed-panel-div">
<ul>
<li><a href="#panel1">Panel 1</a></li>
<li><a href="#panel2">Panel 2</a></li>
<li><a href="#panel3">Panel 3</a></li>
</ul>
<div id="panel1">
<p>Content for first panel.</p>
<p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p>
</div>
<div id="panel2">
<p>Content for second panel.</p>
<p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p>
</div>
<div id="panel3">
<p>Content for third panel.</p>
<p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p>
</div>
</div>
Example: JavaScript
 $(function() {
$("#static-tabbed-panel-div").tabs();
…});
Options for jQuery UI Widgets
• You can supply anonymous object
– Object has optional fields
– Fields specify configuration and
operational options
• Examples
– $("#some-id").tabs();
– $("#some-id").tabs({ option1:
"foo",option2: "bar",option3: "baz" })
Main Options for tabs({…})
• selected (default: 0)
– Tab to be selected initially
• collapsible (default: false)
– Can you click selected tab to hide it (and thus all panels)?
• $("#main-id").tabs({ collapsible: true });
• disabled (default: empty array)
–An array of tab numbers (0-based) that should be
disabled on startup
• event (default: click)
– The type of event that should initiate tab selection
• $("#main-id").tabs({ event: "mouseover" });
• fx
– Many options for specifying animation when tabs are
selected. See docs for details.
Tabbed Panels with
Dynamic (Ajax) Content
• Idea
– Tabbed panel where clicking tabs gets server content
• HTML
– Make a div container to hold the tabs
• <div id="main-tabbed-panel-div">…</div>
– Include a ul list containing external relative hyperlinks
• <ul>
<li><a href="url1">Get Content for Panel 1</a></li>
<li><a href="url2">Get Content for Panel 2</a></li>
</ul>
– That’s all!
• Basic JavaScript
– Call “tabs()” on the div container
• $("#main-tabbed-panel-div").tabs();
Example: HTML
<div id="ajax-tabbed-panel-div">
<ul>
<li><a href="time-panel.jsp">Show
Time</a></li>
<li><a href="list-panel.jsp?range=5">
Show Small Numbers</a></li>
<li><a href="list-panel.jsp?range=500">
Show Big Numbers</a></li>
</ul>
</div>
Example: JavaScript
 $(function() {
$("#ajax-tabbed-panel-
div").tabs({ collapsible: true });
…});
Example: JSP
• time-panel.jsp
<h3>It is now <%= new java.util.Date() %></h3>
Do you know where your closures are doing?
• list-panel.jsp
<% double range = 10.0;
try {
String r = request.getParameter("range");
range = Integer.parseInt(r);
} catch(Exception e) {} %>
<h3>Numbers from 0 to <%= range %></h3>
<ul>
<li><%= Math.random() * range %></li>
<li><%= Math.random() * range %></li>
<li><%= Math.random() * range %></li>
<li><%= Math.random() * range %></li>
<li><%= Math.random() * range %></li>
</ul>
Main Options for tabs({…}) for
Ajax Content
• ajaxOptions (default: {})
– Any of the options used for $.ajax in first jQuery
section
• $("#main-id").tabs({ ajaxOptions: { error:
errorHandler }});
• cache (default: false)
– Should jQuery remember content for previously-
selected
tabs? Very helpful if result is always the same for a
given
URL.
• spinner (default “<em>Loading…</em>”)
–Text to show in tab title after tab selected but before
content is received from server
Accordion Panels
• Idea
– Horizontally stacked panels with wide tabs
• HTML
– Make a div container to hold the tabs
• <div id="main-accordion-panel-div">…</div>
– Include alternating pairs of text with links and content
• <h2><a href="#">Panel 1</a></h2>
• <div>Content for Panel 1</div>
• <h2><a href="#">Panel 2</a></h2>
• <div>Content for Panel 2</div>
• Basic JavaScript
– Call “accordion()” on the div container
• $("#main-accordion-panel-div").tabs();
Example: HTML
<div id="accordion-panel-div">
<h2><a href="#">Panel 1</a></h2>
<div>
<p>Content for first panel.</p>
<p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p>
</div>
<h2><a href="#">Panel 2</a></h2>
<div>
<p>Content for second panel.</p>
<p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p>
</div>
<h2><a href="#">Panel 3</a></h2>
<div>
<p>Content for third panel.</p>
<p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p>
</div>
</div>
Example: JavaScript
 $(function() {
$("#accordion-panel-div").accordion();
…});
Main Options for accordion({…})
• active (default: 0)
– Index or selector for initially-selected item
• collapsible, event
–Can you click to hide? Event to trigger
selection.
– Same as with tabs()
• animated (default: true)
– Name of jQuery animation to use when
showing content
• $("#main-id").accordion({ animated:
"fadeIn" });
Date Picker
• Idea
– Click in textfield to pop up calendar.
Choosing day from calendar puts date string
into textfield
• HTML
– Make an input field
• <input type="text" id="date-field"/>
• Basic JavaScript
– Call “datepicker()” on the textfield
• $("#date-field").datepicker();
Example: HTML
<form action=#">
<table>
<tr><td align="right"> From: <input
type="text"/></td></tr>
<tr><td align="right">
Departure Date: <input type="text" id="start-
date"/></td></tr>
<tr><td align="right">To: <input
type="text"/></td></tr>
<tr><td align="right">
Return Date: <input type="text" id="end-
date"/></td></tr>
<tr><td align="center">
<input type="button" value="Show Flights"/>
<input type="button" value="Show Hotels"/>
</td></tr>
</table>
</form>
Example: JavaScript
 $(function() {
$("#start-date").datepicker();
$("#end-
date").datepicker({ changeMonth:
true,numberOfMonths: 2 });
…});
Main Options for
datepicker({…})
• defaultDate (default: today)
– Initially selected date
• changeMonth (default: false)
changeYear (default: false)
– Should jQuery include a dropdown list to let you
choose the month or year?
• dayNames (default Sunday…Saturday)
monthNames (default January…December)
– Names to use for the days and months. For other
languages. There are also various options for short
versions of days.
• numberOfMonths (default: 1)
– How many months to show at a time
Slider
• Idea
– Interactive slider to let user choose numeric values
• Also supports double-handled sliders for choosing ranges
• HTML
– Make a placeholder div
• <div id="div-for-slider"></div>
• Basic JavaScript
– Call “slider()” on the div, supply function to be called
when slider moves
• $("#div-for-slider").slider({ slide: sliderEventHandler });
– Look up value later
• Event handler takes two arguments: event and ui. Use
ui.value to get current slider value
Example: HTML
<form action="#">
<table>
…
<tr><td align="right">
Temperature:
</td>
<td align="left" width="300">
<div id="slider-div" style="margin-left: 10px"></div>
<div id="temp-display" align="center">32</div>
</td></tr>
<tr><td align="center" colspan="2">
<input type="button" value="Order Coffee"/>
</td></tr>
</table>
</form>
Example: JavaScript
 function showTemp(event, ui) {
$("#temp-display").html(ui.value);
}
 $(function() {
$("#slider-div").slider({ min: 32, max:
212,
slide: showTemp });
…});
Main Options for slider({…})
• min(default: 0)
– Value corresponding to left or top
• max
– Value corresponding to right or bottom
• slide
– Function to call every time value changes. Function takes
two
arguments: event and ui object. Use ui.value to get
currently
selected value.
• step (default: 1)
– Granularity of changes
• value (default: min)
– The initial value
• orientation (default: auto)
– horizontal or vertical
Progress Bar
• Idea
– Shows progress from 0% to 100%
• Output only: does not accept user input
• HTML
– Make a placeholder div
• <div id="div-for-progress-bar"></div>
• Basic JavaScript
– Call “progressbar()” on the div
• $("#div-for-progress").progressbar();
– Have another event that changes values of bar
• Look up value with
$("#div-for-progress").progressbar("option", "value");
• Change value with
$("#div-for-progress").progressbar("option", "value",
num);
Example: HTML
<form action="#">
<div id="progressbar-div"></div>
<input type="button" value="Click 10
Times"
id="progressbar-button"/>
</form>
Example: JavaScript
• function updateProgressBar() {
var currentVal =$("#progressbar-
div").progressbar("option", "value");
if (currentVal < 100) {
currentVal += 10;
$("#progressbar-div").progressbar("option",
"value",
currentVal);
}}
• $(function() {
$("#progressbar-div").progressbar();
$("#progressbar-
button").click(updateProgressBar);
…});
Summary
• Setup
– Load jquery.js, jquery-ui…js and themename/…css
• Ajax tabbed panels
– HTML
• <div id="main">
<ul><ul li><a href="relative-url-1">Panel 1</1></li>
<li><a href="relative-url-2">Panel 2</1></li>…
</ul></div>
– JavaScript
• $("#main").tabs();
• Others
– Static tabbed panels, accordion panel, date picker, slider,
progress bar
Questions??
Thank You
Email : immanish4u@gmail.com

Weitere ähnliche Inhalte

Was ist angesagt?

HirshHorn theme: how I created it
HirshHorn theme: how I created itHirshHorn theme: how I created it
HirshHorn theme: how I created itPaul Bearne
 
jQuery Features to Avoid
jQuery Features to AvoidjQuery Features to Avoid
jQuery Features to Avoiddmethvin
 
jQuery Loves Developers - Oredev 2009
jQuery Loves Developers - Oredev 2009jQuery Loves Developers - Oredev 2009
jQuery Loves Developers - Oredev 2009Remy Sharp
 
A Short Introduction To jQuery
A Short Introduction To jQueryA Short Introduction To jQuery
A Short Introduction To jQuerySudar Muthu
 
jQuery: Nuts, Bolts and Bling
jQuery: Nuts, Bolts and BlingjQuery: Nuts, Bolts and Bling
jQuery: Nuts, Bolts and BlingDoug Neiner
 
jQuery from the very beginning
jQuery from the very beginningjQuery from the very beginning
jQuery from the very beginningAnis Ahmad
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuerymanugoel2003
 
J query b_dotnet_ug_meet_12_may_2012
J query b_dotnet_ug_meet_12_may_2012J query b_dotnet_ug_meet_12_may_2012
J query b_dotnet_ug_meet_12_may_2012ghnash
 
jQuery Fundamentals
jQuery FundamentalsjQuery Fundamentals
jQuery FundamentalsGil Fink
 
jQuery Presentation
jQuery PresentationjQuery Presentation
jQuery PresentationRod Johnson
 
Jquery Complete Presentation along with Javascript Basics
Jquery Complete Presentation along with Javascript BasicsJquery Complete Presentation along with Javascript Basics
Jquery Complete Presentation along with Javascript BasicsEPAM Systems
 
Assetic (Symfony Live Paris)
Assetic (Symfony Live Paris)Assetic (Symfony Live Paris)
Assetic (Symfony Live Paris)Kris Wallsmith
 

Was ist angesagt? (20)

jQuery Presentasion
jQuery PresentasionjQuery Presentasion
jQuery Presentasion
 
HirshHorn theme: how I created it
HirshHorn theme: how I created itHirshHorn theme: how I created it
HirshHorn theme: how I created it
 
jQuery Features to Avoid
jQuery Features to AvoidjQuery Features to Avoid
jQuery Features to Avoid
 
jQuery Loves Developers - Oredev 2009
jQuery Loves Developers - Oredev 2009jQuery Loves Developers - Oredev 2009
jQuery Loves Developers - Oredev 2009
 
A Short Introduction To jQuery
A Short Introduction To jQueryA Short Introduction To jQuery
A Short Introduction To jQuery
 
jQuery: Nuts, Bolts and Bling
jQuery: Nuts, Bolts and BlingjQuery: Nuts, Bolts and Bling
jQuery: Nuts, Bolts and Bling
 
jQuery from the very beginning
jQuery from the very beginningjQuery from the very beginning
jQuery from the very beginning
 
Jquery-overview
Jquery-overviewJquery-overview
Jquery-overview
 
jQuery Basic API
jQuery Basic APIjQuery Basic API
jQuery Basic API
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
J query b_dotnet_ug_meet_12_may_2012
J query b_dotnet_ug_meet_12_may_2012J query b_dotnet_ug_meet_12_may_2012
J query b_dotnet_ug_meet_12_may_2012
 
jQuery Fundamentals
jQuery FundamentalsjQuery Fundamentals
jQuery Fundamentals
 
What is HTML5?
What is HTML5?What is HTML5?
What is HTML5?
 
jQuery
jQueryjQuery
jQuery
 
jQuery
jQueryjQuery
jQuery
 
Jquery
JqueryJquery
Jquery
 
jQuery Presentation
jQuery PresentationjQuery Presentation
jQuery Presentation
 
JQuery introduction
JQuery introductionJQuery introduction
JQuery introduction
 
Jquery Complete Presentation along with Javascript Basics
Jquery Complete Presentation along with Javascript BasicsJquery Complete Presentation along with Javascript Basics
Jquery Complete Presentation along with Javascript Basics
 
Assetic (Symfony Live Paris)
Assetic (Symfony Live Paris)Assetic (Symfony Live Paris)
Assetic (Symfony Live Paris)
 

Andere mochten auch

Socket.io tech talk 06022014
Socket.io   tech talk 06022014Socket.io   tech talk 06022014
Socket.io tech talk 06022014rifqi alfian
 
Redis for high performance application - Techtalk JDV 23-04-2014
Redis for high performance application - Techtalk JDV 23-04-2014Redis for high performance application - Techtalk JDV 23-04-2014
Redis for high performance application - Techtalk JDV 23-04-2014rifqi alfian
 
Slide Seminar UNY, 2010 - Let's Plan Your Application
Slide Seminar UNY, 2010 - Let's Plan Your ApplicationSlide Seminar UNY, 2010 - Let's Plan Your Application
Slide Seminar UNY, 2010 - Let's Plan Your Applicationrifqi alfian
 
HTML5 Google Dev Groups 2013 - Jogja Digital Valley
HTML5 Google Dev Groups 2013 - Jogja Digital ValleyHTML5 Google Dev Groups 2013 - Jogja Digital Valley
HTML5 Google Dev Groups 2013 - Jogja Digital Valleyrifqi alfian
 
6. analisis semantik
6. analisis semantik6. analisis semantik
6. analisis semantikyuster92
 
Slide NoSQL Indonesia - Redis Cache n PubSub
Slide NoSQL Indonesia - Redis Cache n  PubSubSlide NoSQL Indonesia - Redis Cache n  PubSub
Slide NoSQL Indonesia - Redis Cache n PubSubrifqi alfian
 

Andere mochten auch (6)

Socket.io tech talk 06022014
Socket.io   tech talk 06022014Socket.io   tech talk 06022014
Socket.io tech talk 06022014
 
Redis for high performance application - Techtalk JDV 23-04-2014
Redis for high performance application - Techtalk JDV 23-04-2014Redis for high performance application - Techtalk JDV 23-04-2014
Redis for high performance application - Techtalk JDV 23-04-2014
 
Slide Seminar UNY, 2010 - Let's Plan Your Application
Slide Seminar UNY, 2010 - Let's Plan Your ApplicationSlide Seminar UNY, 2010 - Let's Plan Your Application
Slide Seminar UNY, 2010 - Let's Plan Your Application
 
HTML5 Google Dev Groups 2013 - Jogja Digital Valley
HTML5 Google Dev Groups 2013 - Jogja Digital ValleyHTML5 Google Dev Groups 2013 - Jogja Digital Valley
HTML5 Google Dev Groups 2013 - Jogja Digital Valley
 
6. analisis semantik
6. analisis semantik6. analisis semantik
6. analisis semantik
 
Slide NoSQL Indonesia - Redis Cache n PubSub
Slide NoSQL Indonesia - Redis Cache n  PubSubSlide NoSQL Indonesia - Redis Cache n  PubSub
Slide NoSQL Indonesia - Redis Cache n PubSub
 

Ähnlich wie Jquery 5

Advanced JQuery Mobile tutorial with Phonegap
Advanced JQuery Mobile tutorial with Phonegap Advanced JQuery Mobile tutorial with Phonegap
Advanced JQuery Mobile tutorial with Phonegap Rakesh Jha
 
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)Doris Chen
 
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012crokitta
 
SharePointfest Denver - A jQuery Primer for SharePoint
SharePointfest Denver -  A jQuery Primer for SharePointSharePointfest Denver -  A jQuery Primer for SharePoint
SharePointfest Denver - A jQuery Primer for SharePointMarc D Anderson
 
Building iPhone Web Apps using "classic" Domino
Building iPhone Web Apps using "classic" DominoBuilding iPhone Web Apps using "classic" Domino
Building iPhone Web Apps using "classic" DominoRob Bontekoe
 
HTML5 and the dawn of rich mobile web applications pt 2
HTML5 and the dawn of rich mobile web applications pt 2HTML5 and the dawn of rich mobile web applications pt 2
HTML5 and the dawn of rich mobile web applications pt 2James Pearce
 
SharePoint and jQuery Essentials
SharePoint and jQuery EssentialsSharePoint and jQuery Essentials
SharePoint and jQuery EssentialsMark Rackley
 
Introduction to jquery mobile with Phonegap
Introduction to jquery mobile with PhonegapIntroduction to jquery mobile with Phonegap
Introduction to jquery mobile with PhonegapRakesh Jha
 
SPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuerySPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQueryMark Rackley
 
jQuery in the [Aol.] Enterprise
jQuery in the [Aol.] EnterprisejQuery in the [Aol.] Enterprise
jQuery in the [Aol.] EnterpriseDave Artz
 
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePointSPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePointMark Rackley
 
Fronttechnieken met HTML5 en de Slice-template
Fronttechnieken met HTML5 en de Slice-templateFronttechnieken met HTML5 en de Slice-template
Fronttechnieken met HTML5 en de Slice-templateInventis Web Architects
 

Ähnlich wie Jquery 5 (20)

Advanced JQuery Mobile tutorial with Phonegap
Advanced JQuery Mobile tutorial with Phonegap Advanced JQuery Mobile tutorial with Phonegap
Advanced JQuery Mobile tutorial with Phonegap
 
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
 
Yuihacku iitd-sumana
Yuihacku iitd-sumanaYuihacku iitd-sumana
Yuihacku iitd-sumana
 
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
Oracle Application Express & jQuery Mobile - OGh Apex Dag 2012
 
J query module1
J query module1J query module1
J query module1
 
SharePointfest Denver - A jQuery Primer for SharePoint
SharePointfest Denver -  A jQuery Primer for SharePointSharePointfest Denver -  A jQuery Primer for SharePoint
SharePointfest Denver - A jQuery Primer for SharePoint
 
Building iPhone Web Apps using "classic" Domino
Building iPhone Web Apps using "classic" DominoBuilding iPhone Web Apps using "classic" Domino
Building iPhone Web Apps using "classic" Domino
 
JQuery
JQueryJQuery
JQuery
 
HTML5 and the dawn of rich mobile web applications pt 2
HTML5 and the dawn of rich mobile web applications pt 2HTML5 and the dawn of rich mobile web applications pt 2
HTML5 and the dawn of rich mobile web applications pt 2
 
Jquery fundamentals
Jquery fundamentalsJquery fundamentals
Jquery fundamentals
 
SharePoint and jQuery Essentials
SharePoint and jQuery EssentialsSharePoint and jQuery Essentials
SharePoint and jQuery Essentials
 
Introduction to jquery mobile with Phonegap
Introduction to jquery mobile with PhonegapIntroduction to jquery mobile with Phonegap
Introduction to jquery mobile with Phonegap
 
Apex & jQuery Mobile
Apex & jQuery MobileApex & jQuery Mobile
Apex & jQuery Mobile
 
J query
J queryJ query
J query
 
SPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuerySPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuery
 
jQuery in the [Aol.] Enterprise
jQuery in the [Aol.] EnterprisejQuery in the [Aol.] Enterprise
jQuery in the [Aol.] Enterprise
 
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePointSPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
 
Fronttechnieken met HTML5 en de Slice-template
Fronttechnieken met HTML5 en de Slice-templateFronttechnieken met HTML5 en de Slice-template
Fronttechnieken met HTML5 en de Slice-template
 
JQuery
JQueryJQuery
JQuery
 
JQuery
JQueryJQuery
JQuery
 

Kürzlich hochgeladen

unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 

Kürzlich hochgeladen (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 

Jquery 5

  • 1. jQuery 5 – jQuery UI By- Manish Singh
  • 2. Topics in This Section • Overview • Installation and Setup • Widgets – Static tabbed panels – Ajax tabbed panels – Accordion panels – Date picker – Slider – Progress bar
  • 3. Overview • Set of rich GUI elements and effects – Tabbed panels, slider, etc – Effects similar to Scripaculous – Drag and drop API • Pros – Official part of jQuery – Well tested – Very clean design – Many still show meaningful results if JavaScript disabled – Theming framework • Cons – No autocompleter (!) – Not as extensive as Dojo, ext/JS, or YUI
  • 4. Downloading • Download custom bundle – http://jqueryui.com/download – Select widgets and effects you want – Press “Download” to download ZIP file of result • Unzip – Unzip result into location of your choice • Download additional themes – http://jqueryui.com/download – Deselect all widgets and options, choose different theme • You can also interactively build a customized theme – Unzip and copy entries in “css” folder to “css” folder of original download • Bookmark the documentation – http://docs.jquery.com/UI/
  • 5. Installing Files • Load normal jQuery as before – jQuery UI download gives an additional copy in “js” folder, so if you are using jQuery UI, one download from jqueryui.com is sufficient • As discussed in previous sections, it is common to rename jQuery-1.3.x.min.js to jQuery.js to simplify upgrades • Copy jQuery-ui-1.7.x.custom.min.js – E.g., copy download_folder/js/jQuery-ui- 1.7.x.custom.min.js to WebContent/scripts – It is common to leave detailed name for this file, since UI capabilities change from version to version • Copy CSS “theme” folder – E.g., copy download_folder/css/ui-lightness to WebContent/css/
  • 6. Setting Up Page: Overview • Load required jQuery UI files – jquery.js (renamed from jquery- 1.3.2.min.js) – jquery-ui-1.7.1.custom.min.js – Any custom CSS files your app uses • Load your files that use jQuery UI – Any custom JavaScript files your app uses – themename/jquery-ui- 1.7.1.custom.min.css
  • 7. Setting Up Page: Example <link rel="stylesheet“ href="./css/ui- lightness/jquery-ui-1.7.1.custom.css“ type="text/css"/> <link rel="stylesheet“ href="./css/sample- styles.css“ type="text/css"/> <script src="./scripts/jquery.js“ type="text/javascript"></script> <script src="./scripts/jquery-ui- 1.7.1.custom.min.js“ type="text/javascript"></script> <script src="./scripts/jquery-ui-examples.js“ type="text/javascript"></script>
  • 8. Tabbed Panels with Static Content • Idea – Tabbed panel where clicking tabs changes content inside • HTML – Make a div container to hold the tabs • <div id="main-tabbed-panel-div">…</div> – Include a ul list containing internal hyperlinks • <ul> <li><a href="#panel1">Go to Panel 1</a></li> <li><a href="#panel2">Go to Panel 2</a></li> </ul> – Include divs whose ids match the href values (minus “#”) • <div id="panel1">Content for panel 1</div> <div id="panel2">Content for panel 2</div> • Basic JavaScript – Call “tabs()” on the div container • $("#main-tabbed-panel-div").tabs();
  • 9. Example: HTML <div id="static-tabbed-panel-div"> <ul> <li><a href="#panel1">Panel 1</a></li> <li><a href="#panel2">Panel 2</a></li> <li><a href="#panel3">Panel 3</a></li> </ul> <div id="panel1"> <p>Content for first panel.</p> <p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p> </div> <div id="panel2"> <p>Content for second panel.</p> <p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p> </div> <div id="panel3"> <p>Content for third panel.</p> <p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p> </div> </div>
  • 10. Example: JavaScript  $(function() { $("#static-tabbed-panel-div").tabs(); …});
  • 11. Options for jQuery UI Widgets • You can supply anonymous object – Object has optional fields – Fields specify configuration and operational options • Examples – $("#some-id").tabs(); – $("#some-id").tabs({ option1: "foo",option2: "bar",option3: "baz" })
  • 12. Main Options for tabs({…}) • selected (default: 0) – Tab to be selected initially • collapsible (default: false) – Can you click selected tab to hide it (and thus all panels)? • $("#main-id").tabs({ collapsible: true }); • disabled (default: empty array) –An array of tab numbers (0-based) that should be disabled on startup • event (default: click) – The type of event that should initiate tab selection • $("#main-id").tabs({ event: "mouseover" }); • fx – Many options for specifying animation when tabs are selected. See docs for details.
  • 13. Tabbed Panels with Dynamic (Ajax) Content • Idea – Tabbed panel where clicking tabs gets server content • HTML – Make a div container to hold the tabs • <div id="main-tabbed-panel-div">…</div> – Include a ul list containing external relative hyperlinks • <ul> <li><a href="url1">Get Content for Panel 1</a></li> <li><a href="url2">Get Content for Panel 2</a></li> </ul> – That’s all! • Basic JavaScript – Call “tabs()” on the div container • $("#main-tabbed-panel-div").tabs();
  • 14. Example: HTML <div id="ajax-tabbed-panel-div"> <ul> <li><a href="time-panel.jsp">Show Time</a></li> <li><a href="list-panel.jsp?range=5"> Show Small Numbers</a></li> <li><a href="list-panel.jsp?range=500"> Show Big Numbers</a></li> </ul> </div>
  • 15. Example: JavaScript  $(function() { $("#ajax-tabbed-panel- div").tabs({ collapsible: true }); …});
  • 16. Example: JSP • time-panel.jsp <h3>It is now <%= new java.util.Date() %></h3> Do you know where your closures are doing? • list-panel.jsp <% double range = 10.0; try { String r = request.getParameter("range"); range = Integer.parseInt(r); } catch(Exception e) {} %> <h3>Numbers from 0 to <%= range %></h3> <ul> <li><%= Math.random() * range %></li> <li><%= Math.random() * range %></li> <li><%= Math.random() * range %></li> <li><%= Math.random() * range %></li> <li><%= Math.random() * range %></li> </ul>
  • 17. Main Options for tabs({…}) for Ajax Content • ajaxOptions (default: {}) – Any of the options used for $.ajax in first jQuery section • $("#main-id").tabs({ ajaxOptions: { error: errorHandler }}); • cache (default: false) – Should jQuery remember content for previously- selected tabs? Very helpful if result is always the same for a given URL. • spinner (default “<em>Loading…</em>”) –Text to show in tab title after tab selected but before content is received from server
  • 18. Accordion Panels • Idea – Horizontally stacked panels with wide tabs • HTML – Make a div container to hold the tabs • <div id="main-accordion-panel-div">…</div> – Include alternating pairs of text with links and content • <h2><a href="#">Panel 1</a></h2> • <div>Content for Panel 1</div> • <h2><a href="#">Panel 2</a></h2> • <div>Content for Panel 2</div> • Basic JavaScript – Call “accordion()” on the div container • $("#main-accordion-panel-div").tabs();
  • 19. Example: HTML <div id="accordion-panel-div"> <h2><a href="#">Panel 1</a></h2> <div> <p>Content for first panel.</p> <p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p> </div> <h2><a href="#">Panel 2</a></h2> <div> <p>Content for second panel.</p> <p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p> </div> <h2><a href="#">Panel 3</a></h2> <div> <p>Content for third panel.</p> <p>Foo, bar, baz.</p><p>Yadda, yadda, yadda.</p> </div> </div>
  • 20. Example: JavaScript  $(function() { $("#accordion-panel-div").accordion(); …});
  • 21. Main Options for accordion({…}) • active (default: 0) – Index or selector for initially-selected item • collapsible, event –Can you click to hide? Event to trigger selection. – Same as with tabs() • animated (default: true) – Name of jQuery animation to use when showing content • $("#main-id").accordion({ animated: "fadeIn" });
  • 22. Date Picker • Idea – Click in textfield to pop up calendar. Choosing day from calendar puts date string into textfield • HTML – Make an input field • <input type="text" id="date-field"/> • Basic JavaScript – Call “datepicker()” on the textfield • $("#date-field").datepicker();
  • 23. Example: HTML <form action=#"> <table> <tr><td align="right"> From: <input type="text"/></td></tr> <tr><td align="right"> Departure Date: <input type="text" id="start- date"/></td></tr> <tr><td align="right">To: <input type="text"/></td></tr> <tr><td align="right"> Return Date: <input type="text" id="end- date"/></td></tr> <tr><td align="center"> <input type="button" value="Show Flights"/> <input type="button" value="Show Hotels"/> </td></tr> </table> </form>
  • 24. Example: JavaScript  $(function() { $("#start-date").datepicker(); $("#end- date").datepicker({ changeMonth: true,numberOfMonths: 2 }); …});
  • 25. Main Options for datepicker({…}) • defaultDate (default: today) – Initially selected date • changeMonth (default: false) changeYear (default: false) – Should jQuery include a dropdown list to let you choose the month or year? • dayNames (default Sunday…Saturday) monthNames (default January…December) – Names to use for the days and months. For other languages. There are also various options for short versions of days. • numberOfMonths (default: 1) – How many months to show at a time
  • 26. Slider • Idea – Interactive slider to let user choose numeric values • Also supports double-handled sliders for choosing ranges • HTML – Make a placeholder div • <div id="div-for-slider"></div> • Basic JavaScript – Call “slider()” on the div, supply function to be called when slider moves • $("#div-for-slider").slider({ slide: sliderEventHandler }); – Look up value later • Event handler takes two arguments: event and ui. Use ui.value to get current slider value
  • 27. Example: HTML <form action="#"> <table> … <tr><td align="right"> Temperature: </td> <td align="left" width="300"> <div id="slider-div" style="margin-left: 10px"></div> <div id="temp-display" align="center">32</div> </td></tr> <tr><td align="center" colspan="2"> <input type="button" value="Order Coffee"/> </td></tr> </table> </form>
  • 28. Example: JavaScript  function showTemp(event, ui) { $("#temp-display").html(ui.value); }  $(function() { $("#slider-div").slider({ min: 32, max: 212, slide: showTemp }); …});
  • 29. Main Options for slider({…}) • min(default: 0) – Value corresponding to left or top • max – Value corresponding to right or bottom • slide – Function to call every time value changes. Function takes two arguments: event and ui object. Use ui.value to get currently selected value. • step (default: 1) – Granularity of changes • value (default: min) – The initial value • orientation (default: auto) – horizontal or vertical
  • 30. Progress Bar • Idea – Shows progress from 0% to 100% • Output only: does not accept user input • HTML – Make a placeholder div • <div id="div-for-progress-bar"></div> • Basic JavaScript – Call “progressbar()” on the div • $("#div-for-progress").progressbar(); – Have another event that changes values of bar • Look up value with $("#div-for-progress").progressbar("option", "value"); • Change value with $("#div-for-progress").progressbar("option", "value", num);
  • 31. Example: HTML <form action="#"> <div id="progressbar-div"></div> <input type="button" value="Click 10 Times" id="progressbar-button"/> </form>
  • 32. Example: JavaScript • function updateProgressBar() { var currentVal =$("#progressbar- div").progressbar("option", "value"); if (currentVal < 100) { currentVal += 10; $("#progressbar-div").progressbar("option", "value", currentVal); }} • $(function() { $("#progressbar-div").progressbar(); $("#progressbar- button").click(updateProgressBar); …});
  • 33. Summary • Setup – Load jquery.js, jquery-ui…js and themename/…css • Ajax tabbed panels – HTML • <div id="main"> <ul><ul li><a href="relative-url-1">Panel 1</1></li> <li><a href="relative-url-2">Panel 2</1></li>… </ul></div> – JavaScript • $("#main").tabs(); • Others – Static tabbed panels, accordion panel, date picker, slider, progress bar
  • 35. Thank You Email : immanish4u@gmail.com