SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

La actualidad más candente

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
 

La actualidad más candente (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)
 

Destacado

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
 

Destacado (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
 

Similar a 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
 

Similar a 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
 

Último

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 

Último (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

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