SlideShare une entreprise Scribd logo
1  sur  92
Télécharger pour lire hors ligne
The DOM Scripting Toolkit:
       jQuery
         Remy Sharp
          Left Logic
Why JS Libraries?

• DOM scripting made easy
Why JS Libraries?

• DOM scripting made easy
• Cross browser work done for you
Why JS Libraries?

• DOM scripting made easy
• Cross browser work done for you
• Puts some fun back in to coding
Why jQuery?
• Lean API, makes your code smaller
Why jQuery?
• Lean API, makes your code smaller
• Small (15k gzip’d), encapsulated, friendly
  library - plays well!
Why jQuery?
• Lean API, makes your code smaller
• Small (15k gzip’d), encapsulated, friendly
  library - plays well!
• Plugin API is really simple
Why jQuery?
• Lean API, makes your code smaller
• Small (15k gzip’d), encapsulated, friendly
  library - plays well!
• Plugin API is really simple
• Large, active community
Why jQuery?
• Lean API, makes your code smaller
• Small (15k gzip’d), encapsulated, friendly
  library - plays well!
• Plugin API is really simple
• Large, active community
• Big boys use it too: Google, BBC, Digg,
  Wordpress, Amazon, IBM.
What’s in jQuery?

• Selectors & Chaining
• DOM manipulation
• Events
• Ajax
• Simple effects
Selectors
$(‘#emails a.subject’);
Selectors

• “Find something, do something with it”
Selectors

• “Find something, do something with it”
• The dollar function
Selectors

• “Find something, do something with it”
• The dollar function
• CSS 1-3 selectors at the core of jQuery
Selectors

• “Find something, do something with it”
• The dollar function
• CSS 1-3 selectors at the core of jQuery
• Custom selectors
CSS Selectors

$(‘div’)
CSS Selectors

$(‘div’)
$(‘div.foo’)
CSS Selectors

$(‘div’)
$(‘div.foo’)
$(‘a[type=”application/pdf”]’)
CSS Selectors

$(‘div’)
$(‘div.foo’)
$(‘a[type=”application/pdf”]’)
$(‘tr td:first-child’)
Custom Selectors

$(‘div:visible’)
Custom Selectors

$(‘div:visible’)
$(‘:animated’)
Custom Selectors

$(‘div:visible’)
$(‘:animated’)
$(‘:input’)
Custom Selectors

$(‘div:visible’)
$(‘:animated’)
$(‘:input’)
$(‘tr:odd’)
Selector Performance
$(‘#email’) // same as getElementById
Selector Performance
$(‘#email’) // same as getElementById
$(‘.email’) // slower on a big DOM
Selector Performance
$(‘#email’) // same as getElementById
$(‘.email’) // slower on a big DOM
// using context
$(‘#emails .subject’)
$(‘.subject’, this)
Selector Performance
$(‘#email’) // same as getElementById
$(‘.email’) // slower on a big DOM
// using context
$(‘#emails .subject’)
$(‘.subject’, this)
// Caching
var subjects = $(‘#emails .subject’);
Chaining
$(‘#emails .subjects’)
   .click()
   .addClass(‘read’);
Chaining

• jQuery returns itself *



* except when requesting string values, such as .css() or .val()
Chaining

• jQuery returns itself *
• We can use the selector once, and keep
    manipulating




* except when requesting string values, such as .css() or .val()
Chaining

• jQuery returns itself *
• We can use the selector once, and keep
    manipulating
• Can reduce size of our code

* except when requesting string values, such as .css() or .val()
Chaining in Action
var image = new Image();
$(image)
 .load(function () {
   // show new image
 })
 .error(function () {
   // handle error
 })
 .attr(‘src’, ‘/path/to/large-image.jpg’);
More Chaining
// simple tabs
$(‘a.tab’).click(function () {
  $(tabs)
    .hide()
    .filter(this.hash)
      .show();
});
Collections
 $(‘#emails .subjects’).each(fn)
Collections

• .each(fn)
  Iterates through a collection applying the
  method
Collections

• .each(fn)
  Iterates through a collection applying the
  method
• .map(fn)
  Iterates through collection, returning array
  from fn
Working the DOM
 $(this).addClass(‘read’).next().show();
DOM Walking
• Navigation: children,
  parent, parents, siblings,
  next, prev
DOM Walking
• Navigation: children,
  parent, parents, siblings,
  next, prev
• Filters: filter, find, not, eq
DOM Walking
• Navigation: children,
  parent, parents, siblings,
  next, prev
• Filters: filter, find, not, eq
• Collections: add, end
DOM Walking
• Navigation: children,
  parent, parents, siblings,
  next, prev
• Filters: filter, find, not, eq
• Collections: add, end
• Tests: is
DOM Walking
•   Navigation: children,      $(‘div’)
    parent, parents, siblings, .find(‘a.subject’)
                                  .click(fn)
    next, prev
                                 .end() // strip filter
• Filters: filter, find, not, eq   .eq(0) // like :first
                                   .addClass(‘highlight’);
• Collections: add, end
• Tests: is
Manipulation
• Inserting: after, append, before, prepend,
  html, text, wrap, clone
Manipulation
• Inserting: after, append, before, prepend,
  html, text, wrap, clone
• Clearing: empty, remove, removeAttr
Manipulation
• Inserting: after, append, before, prepend,
  html, text, wrap, clone
• Clearing: empty, remove, removeAttr
• Style: attr, addClass, removeClass,
  toggleClass, css, hide, show, toggle
Manipulation
• Inserting: after, append, before, prepend,
   html, text, wrap, clone
• Clearing: empty, remove, removeAttr
• Style: attr, addClass, removeClass,
   toggleClass, css, hide, show, toggle
var a = $(document.createElement(‘a’)); // or $(‘<a>’)
a.css(‘opacity’, 0.6).text(‘My Link’).attr(‘href’, ‘/home/’);
$(‘div’).empty().append(a);
Data
• Storing data directly
  against elements can
  cause leaks
Data
• Storing data directly
  against elements can
  cause leaks
• .data() clean way of
  linking data to element
Data
• Storing data directly
  against elements can
  cause leaks
• .data() clean way of
  linking data to element
• All handled by jQuery’s
  garbage collection
Data
•                             $(this).data(‘type’, ‘forward’);
    Storing data directly
    against elements can
                              var types =
    cause leaks               $(‘a.subject’).data(‘type’);
• .data() clean way of        $(‘a.subject’).removeData();
    linking data to element
• All handled by jQuery’s
    garbage collection
Events
$(‘a.subject’).click();
DOM Ready

• Most common event: DOM ready
DOM Ready

• Most common event: DOM ready
 $(document).ready(function () {})
 // or as a shortcut:
 $(function () {})
Binding
• Manages events and garbage collection
Binding
• Manages events and garbage collection
• Event functions are bound to the elements
  matched selector
Binding
• Manages events and garbage collection
• Event functions are bound to the elements
  matched selector
• Also supports .one()
Binding
• Manages events and garbage collection
• Event functions are bound to the elements
  matched selector
• Also supports .one()
 $(‘a.reveal’).bind(‘click’, function(event) {
   // ‘this’ refers to the current element
   // this.hash is #moreInfo - mapping to real element
   $(this.hash).slideDown();
 }).filter(‘:first’).trigger(‘click’);
Helpers
• Mouse: click, dlbclick, mouseover, toggle,
  hover, etc.
Helpers
• Mouse: click, dlbclick, mouseover, toggle,
  hover, etc.
• Keyboard: keydown, keyup, keypress
Helpers
• Mouse: click, dlbclick, mouseover, toggle,
  hover, etc.
• Keyboard: keydown, keyup, keypress
• Forms: change, select, submit, focus, blur
Helpers
• Mouse: click, dlbclick, mouseover, toggle,
  hover, etc.
• Keyboard: keydown, keyup, keypress
• Forms: change, select, submit, focus, blur
• Windows: scroll
Helpers
• Mouse: click, dlbclick, mouseover, toggle,
  hover, etc.
• Keyboard: keydown, keyup, keypress
• Forms: change, select, submit, focus, blur
• Windows: scroll
• Windows, images, scripts: load, error
Custom Events

• Roll your own
Custom Events

• Roll your own
• Bind to element (or elements)
Custom Events

• Roll your own
• Bind to element (or elements)
• Trigger them later and pass data
Custom Events

• Roll your own
• Bind to element (or elements)
• Trigger them later and pass data
 $(‘div.myWidget’).trigger(‘foo’, [123/*id*/]);
 // id access via
 // .bind(‘foo’, function (event, id, etc) {})
Event Namespaces

• Support for event
  subsets via namespaces
Event Namespaces

• Support for event
  subsets via namespaces
• If you don’t want to
  unbind all type X events
  - use namespaces
Event Namespaces

•                              $(‘a’).bind(‘click.foo’, fn);
    Support for event
    subsets via namespaces     $(‘a’).unbind(‘.foo’);
• If you don’t want to
    unbind all type X events
    - use namespaces
Ajax
$.ajax({ url : ‘/foo’, success : bar });
Ajax Made Easy
• Cross browser, no hassle.
Ajax Made Easy
• Cross browser, no hassle.
• $.ajax does it all
Ajax Made Easy
• Cross browser, no hassle.
• $.ajax does it all
• Helpers $.get, $.getJSON, $.getScript,
  $.post, $.load
Ajax Made Easy
• Cross browser, no hassle.
• $.ajax does it all
• Helpers $.get, $.getJSON, $.getScript,
  $.post, $.load
• All Ajax requests sends:
  X-Requested-With = XMLHttpRequest
$.ajax
$(‘form.register’).submit(function () {
  var el = this; // cache for use in success function
  $.ajax({
    url : $(this).attr(‘action’),
    data : { ‘username’ : $(‘input.username’).val() }, // ‘this’ is the link
    beforeSend : showValidatingMsg, // function
    dataType : ‘json’,
    type : ‘post’,
    success : function (data) {
       // do something with data - show validation message
    },
    error : function (xhr, status, e) {
       // handle the error - inform the user of problem
       console.log(xhr, status, e);
    }
  });
  return false; // cancel default browser action
});
Effects
$(this).slideDown();
Base Effects
$(‘div:hidden’).show(200, fn);
$(‘div:visible’).hide(200);
$(‘div’).fadeIn(200);
$(‘div’).slideDown(100);
Base Effects
$(‘div:hidden’).show(200, fn);
$(‘div:visible’).hide(200);
$(‘div’).fadeIn(200);
$(‘div’).slideDown(100);
$(‘div’).animate({
  ‘opacity’ : 0.5,
  ‘left’ : ‘-=10px’
}, ‘slow’, fn)
Utilities
$.browser.version
Utilities

• Iterators: each, map, grep
Utilities

• Iterators: each, map, grep
• Browser versions, model and boxModel
  support
Utilities

• Iterators: each, map, grep
• Browser versions, model and boxModel
  support
• isFunction
Core Utilities
• jQuery can plays with others!
Core Utilities
• jQuery can plays with others!
 $j = $.noConflict();
 $j === $ // false
Core Utilities
• Extend jQuery, merge objects and create
  settings from defaults
Core Utilities
• Extend jQuery, merge objects and create
  settings from defaults


 var defaults = { ‘limit’ : 10, ‘dataType’ : ‘json’ };
 var options = { ‘limit’ : 5, ‘username’ : ‘remy’ };
 var settings = $.extend({}, defaults, options);
 // settings = { ‘limit’ : 5, ‘dataType’ : ‘json’,
 ‘username’ : ‘remy’ }
Plugins
$(‘#emails .subjects’).doMagic()
Plugins

• Simple to write
Plugins

• Simple to write
• Makes your code more reusable
Plugins

• Simple to write
• Makes your code more reusable
• Don’t break the chain!
Simple Plugin
// wrap in anonymous function to use $
(function ($) {
 $.fn.log = function () {
   console.log(this);
   // returning continues the chain
   return this; // this is the jQuery collection
 };
})(jQuery);
More Info
                      Resources:
Remy Sharp:
                      jquery.com
remy@leftlogic.com
                      docs.jquery.com
leftlogic.com
                      groups.google.com/group/
                      jquery-en
remysharp.com
                      ui.jquery.com
                      learningjquery.com
                      jqueryfordesigners.com

Contenu connexe

Tendances

Unobtrusive javascript with jQuery
Unobtrusive javascript with jQueryUnobtrusive javascript with jQuery
Unobtrusive javascript with jQuery
Angel Ruiz
 

Tendances (20)

jQuery for beginners
jQuery for beginnersjQuery for beginners
jQuery for beginners
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
JQuery introduction
JQuery introductionJQuery introduction
JQuery introduction
 
Jquery-overview
Jquery-overviewJquery-overview
Jquery-overview
 
jQuery Loves Developers - Oredev 2009
jQuery Loves Developers - Oredev 2009jQuery Loves Developers - Oredev 2009
jQuery Loves Developers - Oredev 2009
 
jQuery Essentials
jQuery EssentialsjQuery Essentials
jQuery Essentials
 
An in-depth look at jQuery UI
An in-depth look at jQuery UIAn in-depth look at jQuery UI
An in-depth look at jQuery UI
 
Jquery
JqueryJquery
Jquery
 
jQuery
jQueryjQuery
jQuery
 
jQuery from the very beginning
jQuery from the very beginningjQuery from the very beginning
jQuery from the very beginning
 
jQuery Presentation
jQuery PresentationjQuery Presentation
jQuery Presentation
 
JavaScript 1.5 to 2.0 (TomTom)
JavaScript 1.5 to 2.0 (TomTom)JavaScript 1.5 to 2.0 (TomTom)
JavaScript 1.5 to 2.0 (TomTom)
 
jQuery (BostonPHP)
jQuery (BostonPHP)jQuery (BostonPHP)
jQuery (BostonPHP)
 
Unobtrusive javascript with jQuery
Unobtrusive javascript with jQueryUnobtrusive javascript with jQuery
Unobtrusive javascript with jQuery
 
jQuery
jQueryjQuery
jQuery
 
Organizing Code with JavascriptMVC
Organizing Code with JavascriptMVCOrganizing Code with JavascriptMVC
Organizing Code with JavascriptMVC
 
jQuery Features to Avoid
jQuery Features to AvoidjQuery Features to Avoid
jQuery Features to Avoid
 
jQuery: Nuts, Bolts and Bling
jQuery: Nuts, Bolts and BlingjQuery: Nuts, Bolts and Bling
jQuery: Nuts, Bolts and Bling
 
jQuery
jQueryjQuery
jQuery
 
History of jQuery
History of jQueryHistory of jQuery
History of jQuery
 

En vedette (6)

MS Sql Server: Introduction To Datamining Suing Sql Server
MS Sql Server: Introduction To Datamining Suing Sql ServerMS Sql Server: Introduction To Datamining Suing Sql Server
MS Sql Server: Introduction To Datamining Suing Sql Server
 
Quick Look At Classification
Quick Look At ClassificationQuick Look At Classification
Quick Look At Classification
 
Ext Js
Ext JsExt Js
Ext Js
 
SQL and NoSQL Better Together in Alasql
SQL and NoSQL Better Together in AlasqlSQL and NoSQL Better Together in Alasql
SQL and NoSQL Better Together in Alasql
 
MS SQL SERVER: Microsoft naive bayes algorithm
MS SQL SERVER: Microsoft naive bayes algorithmMS SQL SERVER: Microsoft naive bayes algorithm
MS SQL SERVER: Microsoft naive bayes algorithm
 
MS SQL SERVER:Microsoft neural network and logistic regression
MS SQL SERVER:Microsoft neural network and logistic regressionMS SQL SERVER:Microsoft neural network and logistic regression
MS SQL SERVER:Microsoft neural network and logistic regression
 

Similaire à The Dom Scripting Toolkit J Query

Remy Sharp The DOM scripting toolkit jQuery
Remy Sharp The DOM scripting toolkit jQueryRemy Sharp The DOM scripting toolkit jQuery
Remy Sharp The DOM scripting toolkit jQuery
deimos
 
Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011
Chris Alfano
 
jQuery - 10 Time-Savers You (Maybe) Don't Know
jQuery - 10 Time-Savers You (Maybe) Don't KnowjQuery - 10 Time-Savers You (Maybe) Don't Know
jQuery - 10 Time-Savers You (Maybe) Don't Know
girish82
 
Using jQuery to Extend CSS
Using jQuery to Extend CSSUsing jQuery to Extend CSS
Using jQuery to Extend CSS
Chris Coyier
 
Bcblackpool jquery tips
Bcblackpool jquery tipsBcblackpool jquery tips
Bcblackpool jquery tips
Jack Franklin
 

Similaire à The Dom Scripting Toolkit J Query (20)

Remy Sharp The DOM scripting toolkit jQuery
Remy Sharp The DOM scripting toolkit jQueryRemy Sharp The DOM scripting toolkit jQuery
Remy Sharp The DOM scripting toolkit jQuery
 
An in-depth look at jQuery
An in-depth look at jQueryAn in-depth look at jQuery
An in-depth look at jQuery
 
jQuery Presentation to Rails Developers
jQuery Presentation to Rails DevelopersjQuery Presentation to Rails Developers
jQuery Presentation to Rails Developers
 
DOSUG Intro to JQuery JavaScript Framework
DOSUG Intro to JQuery JavaScript FrameworkDOSUG Intro to JQuery JavaScript Framework
DOSUG Intro to JQuery JavaScript Framework
 
Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011
 
jQuery (MeshU)
jQuery (MeshU)jQuery (MeshU)
jQuery (MeshU)
 
jQuery Internals + Cool Stuff
jQuery Internals + Cool StuffjQuery Internals + Cool Stuff
jQuery Internals + Cool Stuff
 
jQuery - 10 Time-Savers You (Maybe) Don't Know
jQuery - 10 Time-Savers You (Maybe) Don't KnowjQuery - 10 Time-Savers You (Maybe) Don't Know
jQuery - 10 Time-Savers You (Maybe) Don't Know
 
Cheap frontend tricks
Cheap frontend tricksCheap frontend tricks
Cheap frontend tricks
 
jQuery
jQueryjQuery
jQuery
 
jQuery: Tips, tricks and hints for better development and Performance
jQuery: Tips, tricks and hints for better development and PerformancejQuery: Tips, tricks and hints for better development and Performance
jQuery: Tips, tricks and hints for better development and Performance
 
Javascript in Plone
Javascript in PloneJavascript in Plone
Javascript in Plone
 
jQuery (DrupalCamp Toronto)
jQuery (DrupalCamp Toronto)jQuery (DrupalCamp Toronto)
jQuery (DrupalCamp Toronto)
 
Using jQuery to Extend CSS
Using jQuery to Extend CSSUsing jQuery to Extend CSS
Using jQuery to Extend CSS
 
Jquery optimization-tips
Jquery optimization-tipsJquery optimization-tips
Jquery optimization-tips
 
Secrets of JavaScript Libraries
Secrets of JavaScript LibrariesSecrets of JavaScript Libraries
Secrets of JavaScript Libraries
 
The Inclusive Web: hands-on with HTML5 and jQuery
The Inclusive Web: hands-on with HTML5 and jQueryThe Inclusive Web: hands-on with HTML5 and jQuery
The Inclusive Web: hands-on with HTML5 and jQuery
 
jQuery Rescue Adventure
jQuery Rescue AdventurejQuery Rescue Adventure
jQuery Rescue Adventure
 
JQuery In Drupal
JQuery In DrupalJQuery In Drupal
JQuery In Drupal
 
Bcblackpool jquery tips
Bcblackpool jquery tipsBcblackpool jquery tips
Bcblackpool jquery tips
 

Plus de QConLondon2008

J Ruby Power On The Jvm
J Ruby Power On The JvmJ Ruby Power On The Jvm
J Ruby Power On The Jvm
QConLondon2008
 
Market Risk System Bnp Paribas
Market Risk System Bnp ParibasMarket Risk System Bnp Paribas
Market Risk System Bnp Paribas
QConLondon2008
 
Evolving The Java Language
Evolving The Java LanguageEvolving The Java Language
Evolving The Java Language
QConLondon2008
 
Google G Data Reading And Writing Data On The Web
Google G Data Reading And Writing Data On The WebGoogle G Data Reading And Writing Data On The Web
Google G Data Reading And Writing Data On The Web
QConLondon2008
 
14147503 Intentions Interfaces Making Patterns Concrete
14147503 Intentions Interfaces Making Patterns Concrete14147503 Intentions Interfaces Making Patterns Concrete
14147503 Intentions Interfaces Making Patterns Concrete
QConLondon2008
 
Google G Data Reading And Writing Data On The Web 1
Google G Data Reading And Writing Data On The Web 1Google G Data Reading And Writing Data On The Web 1
Google G Data Reading And Writing Data On The Web 1
QConLondon2008
 
Application Services On The Web Sales Forcecom
Application Services On The Web Sales ForcecomApplication Services On The Web Sales Forcecom
Application Services On The Web Sales Forcecom
QConLondon2008
 
Rest Reuse And Serendipity
Rest Reuse And SerendipityRest Reuse And Serendipity
Rest Reuse And Serendipity
QConLondon2008
 

Plus de QConLondon2008 (11)

J Ruby Power On The Jvm
J Ruby Power On The JvmJ Ruby Power On The Jvm
J Ruby Power On The Jvm
 
Agile Mashups
Agile MashupsAgile Mashups
Agile Mashups
 
Market Risk System Bnp Paribas
Market Risk System Bnp ParibasMarket Risk System Bnp Paribas
Market Risk System Bnp Paribas
 
A Tale Of Two Systems
A Tale Of Two SystemsA Tale Of Two Systems
A Tale Of Two Systems
 
Evolving The Java Language
Evolving The Java LanguageEvolving The Java Language
Evolving The Java Language
 
Google G Data Reading And Writing Data On The Web
Google G Data Reading And Writing Data On The WebGoogle G Data Reading And Writing Data On The Web
Google G Data Reading And Writing Data On The Web
 
14147503 Intentions Interfaces Making Patterns Concrete
14147503 Intentions Interfaces Making Patterns Concrete14147503 Intentions Interfaces Making Patterns Concrete
14147503 Intentions Interfaces Making Patterns Concrete
 
Google G Data Reading And Writing Data On The Web 1
Google G Data Reading And Writing Data On The Web 1Google G Data Reading And Writing Data On The Web 1
Google G Data Reading And Writing Data On The Web 1
 
Application Services On The Web Sales Forcecom
Application Services On The Web Sales ForcecomApplication Services On The Web Sales Forcecom
Application Services On The Web Sales Forcecom
 
Managers In Scrum
Managers In ScrumManagers In Scrum
Managers In Scrum
 
Rest Reuse And Serendipity
Rest Reuse And SerendipityRest Reuse And Serendipity
Rest Reuse And Serendipity
 

Dernier

Dernier (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 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
 
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...
 
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...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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, ...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

The Dom Scripting Toolkit J Query