SlideShare una empresa de Scribd logo
1 de 25
AJAX
Ajax-based Applications
                          Cancel Alexandru 4b
                          Gavrilescu Andrei 3b
• AJAX = Asynchronous JavaScript and XML.
• AJAX is not a new programming language, but a new
  way to use existing standards.
• AJAX is a technique of exchanging data with a server,
  and update parts of a web page - without reloading the
  whole page.




What is Ajax?
Classic model vs AJAX
Classic model vs AJAX
•   Faster web actions
•   Dynamic content
•   Less (or no) page refreshes
•   Reduce network traffic
•   Decrease server-side bandwidth usage
•   Web apps that rival installed GUI applications




Why Ajax?
• Intuitive and natural user interaction
         -No clicking required
         -Mouse movement is sufficient to trigger event
• “Partial screen update” replaces the “click, wait, and refresh” user
  interaction model
         -Only user interface elements that contain new information are
   updated (fast response)
         -The rest of the user interface ramains displayed without
   interruption (no loss of operational context)




Why Ajax?
• Data driven (as oposed to page-driven)
        -UI is handled in the client while server provides data
• Asynchronous communication replaces “synchronous
  request/response model”
        -A user can continue to use the application while the client
   program requests information from the server in the background
        -Separation of displaying from data fetching




Why Ajax?
Typical use cases for Ajax would be:
• situations where only parts of a page needs to be updated
  in general
• use ajax to speed things up, not to slow things down!
• form submissions
• show and hide stuff
• image slide shows
• Client side input validation




Ajax uses
• Windows Live Mail
• Google
    -Google mail
    -Google maps
    -Google Suggests
• Yahoo! Flickr
• Meebo




Who uses AJAX?
Google maps
• The map is broken up into a grid of
  256x256 images (something like an old
  tile-based scrolling console game)
• These images are absolutely positioned
  - and the 'infinite' scrolling effect is
  achieved by picking up tiles that are off-
  screen on one end and placing them
  down on the other end




Google maps
Getting the images
• each tile represents a known area specified in longitude
  and latitude, at a given zoom level
• getting map images - all you have to do is set an image
  tile's URL http://mt.google.com/mt?v=.1&x={x tile
  index}&{y tile index}=2&zoom={zoom level}
• when a user moves or "drags" a map on Google, new tiles
  are loaded just beyond the visible edges of the screen.




Google maps-server communication
Searching
• you can't 'submit' the entire page, because that would
  destroy your map and other context
• solution is to submit a hidden IFrame, then gather the
  search results from it (it also preserves browser history)
• The result is loaded into the hidden IFrame which, when
  loaded, will sent a XML back up to the outer frame's
  _load() function. This saves the outer frame from having
  to determine when the IFrame is done loading.




Google maps-server communication
XML response sample
<?xml version="1.0"?>
<page>
<title>atlanta</title>
<query>atlanta</query>
<center lat="33.748889" lng="-84.388056"/>
<span lat="0.089988" lng="0.108228"/>
<overlay panelStyle="/mapfiles/geocodepanel.xsl">
<location infoStyle="/mapfiles/geocodeinfo.xsl" id="A">
<point lat="33.748889" lng="-84.388056"/>
<icon class="noicon"/>
<info>
<title xml:space="preserve"></title>
<address>
<line>Atlanta, GA</line>
</address>
</info></location></overlay></page>



Google maps-server communication
• The JavaScript then uses the
  XSLTProcessor component to
  apply an XSLT to the result
  XML( done on the client)
• This generates the HTML which
  is then shown in the right panel




Google maps
• Google Maps is probably the best-known Ajax
  application. Functionally, it offers some great advances
  over conventional map websites




Google maps Conclusion
Ajax on mobile devices
• only a subset of mobile devices can
   fully use Ajax-powered websites
 • most websites are not optimized for
   mobile devices
 • Ajax is an attractive way to develop
   applications for bandwidth-
   constrained devices and
   environments




Ajax on mobile devices
• it can help address battery,
   bandwidth, latency and smooth
   multimedia issues
 • sites such as Google and
   FaceBook have customized the
   HTML sent to mobile devices to
   better address the characteristics
   of these devices.




Ajax on mobile devices
The following browsers are known to support AJAX to
some degree:
• Opera Mobile (>= 8.x, not Opera Mini)
• Internet Explorer Mobile (WM 5.0/2003)
• S60 3rd edition (WebKit/KHTML core)
• Minimo (Gecko-based)
• OpenWave (>=Mercury)
• NetFront (>=3.4)
• Safari Mobile (iPhone)




Ajax on mobile devices
• Fetched content does not register
  with browser history
• Search engines may not be able
  to index all pages
• Inaccurate Back & Forward
  button actions




Ajax Disadvantages?
• JavaScript can be easily disabled
  from client side
• JavaScript may tax older machines
  CPU
• May be disabled (for security
  reasons) or not available on some
  browsers
• Cross Browser Issues can be a
  pain




Ajax Disadvantages?
• Very powerfull when used appropriately
• It’s a method not a necessity
• Do not rely on it if possible.Have an alternate if it fails.




Conclusion
Questions?
Sources:
• http://en.wikipedia.org/wiki/Ajax_(programming)
• http://www.adaptivepath.com/ideas/ajax-new-approach-web-
  applications
• http://www.openajax.org/whitepapers/Introduction%20to%20Mobile
  %20Ajax
• http://web.archive.org/web/20050331002145/jgwebber.blogspot.com/
  2005/02/mapping-google.html%20for%20Developers.php




                 The end

Más contenido relacionado

La actualidad más candente

Ajax Presentation
Ajax PresentationAjax Presentation
Ajax Presentationjrdoane
 
Architecture in Ajax Applications
Architecture in Ajax ApplicationsArchitecture in Ajax Applications
Architecture in Ajax ApplicationsAlois Reitbauer
 
Using Ajax In Domino Web Applications
Using Ajax In Domino Web ApplicationsUsing Ajax In Domino Web Applications
Using Ajax In Domino Web Applicationsdominion
 
Asynchronous JavaScript & XML (AJAX)
Asynchronous JavaScript & XML (AJAX)Asynchronous JavaScript & XML (AJAX)
Asynchronous JavaScript & XML (AJAX)Adnan Sohail
 
Introduction to ajax
Introduction to ajaxIntroduction to ajax
Introduction to ajaxNir Elbaz
 
Ajax:From Desktop Applications towards Ajax Web Applications
Ajax:From Desktop Applications towards Ajax Web ApplicationsAjax:From Desktop Applications towards Ajax Web Applications
Ajax:From Desktop Applications towards Ajax Web ApplicationsSiva Kumar
 
Ajax ppt - 32 slides
Ajax ppt - 32 slidesAjax ppt - 32 slides
Ajax ppt - 32 slidesSmithss25
 
What is Ajax technology?
What is Ajax technology?What is Ajax technology?
What is Ajax technology?JavaTpoint.Com
 
Introduction to ajax
Introduction to ajaxIntroduction to ajax
Introduction to ajaxRaja V
 
Ajax presentation
Ajax presentationAjax presentation
Ajax presentationengcs2008
 
An Introduction to Ajax Programming
An Introduction to Ajax ProgrammingAn Introduction to Ajax Programming
An Introduction to Ajax Programminghchen1
 

La actualidad más candente (20)

Introduction to ajax
Introduction to ajaxIntroduction to ajax
Introduction to ajax
 
Ajax Presentation
Ajax PresentationAjax Presentation
Ajax Presentation
 
Architecture in Ajax Applications
Architecture in Ajax ApplicationsArchitecture in Ajax Applications
Architecture in Ajax Applications
 
Ajax
AjaxAjax
Ajax
 
Overview of AJAX
Overview of AJAXOverview of AJAX
Overview of AJAX
 
Using Ajax In Domino Web Applications
Using Ajax In Domino Web ApplicationsUsing Ajax In Domino Web Applications
Using Ajax In Domino Web Applications
 
Asynchronous JavaScript & XML (AJAX)
Asynchronous JavaScript & XML (AJAX)Asynchronous JavaScript & XML (AJAX)
Asynchronous JavaScript & XML (AJAX)
 
Introduction to ajax
Introduction to ajaxIntroduction to ajax
Introduction to ajax
 
Ajax:From Desktop Applications towards Ajax Web Applications
Ajax:From Desktop Applications towards Ajax Web ApplicationsAjax:From Desktop Applications towards Ajax Web Applications
Ajax:From Desktop Applications towards Ajax Web Applications
 
Ajax ppt - 32 slides
Ajax ppt - 32 slidesAjax ppt - 32 slides
Ajax ppt - 32 slides
 
Ajax.ppt
Ajax.pptAjax.ppt
Ajax.ppt
 
Ajax and PHP
Ajax and PHPAjax and PHP
Ajax and PHP
 
Ajax Presentation
Ajax PresentationAjax Presentation
Ajax Presentation
 
What is Ajax technology?
What is Ajax technology?What is Ajax technology?
What is Ajax technology?
 
AJAX
AJAXAJAX
AJAX
 
Introduction to ajax
Introduction to ajaxIntroduction to ajax
Introduction to ajax
 
Ajax
AjaxAjax
Ajax
 
Ajax presentation
Ajax presentationAjax presentation
Ajax presentation
 
An Introduction to Ajax Programming
An Introduction to Ajax ProgrammingAn Introduction to Ajax Programming
An Introduction to Ajax Programming
 
Jquery Ajax
Jquery AjaxJquery Ajax
Jquery Ajax
 

Similar a Ajax (20)

Ajax & Reverse Ajax Presenation
Ajax & Reverse Ajax PresenationAjax & Reverse Ajax Presenation
Ajax & Reverse Ajax Presenation
 
Ajax ppt
Ajax pptAjax ppt
Ajax ppt
 
Asynchronous javascript and xml
Asynchronous javascript and xmlAsynchronous javascript and xml
Asynchronous javascript and xml
 
AJAX Introduction [Autosaved].pptx
AJAX Introduction [Autosaved].pptxAJAX Introduction [Autosaved].pptx
AJAX Introduction [Autosaved].pptx
 
Mobile Ajax Workshop
Mobile Ajax WorkshopMobile Ajax Workshop
Mobile Ajax Workshop
 
Mobile Web
Mobile WebMobile Web
Mobile Web
 
Intoduction to Ajax
Intoduction to AjaxIntoduction to Ajax
Intoduction to Ajax
 
Going Mobile with HTML5
Going Mobile with HTML5Going Mobile with HTML5
Going Mobile with HTML5
 
Ajax
AjaxAjax
Ajax
 
Ajax
AjaxAjax
Ajax
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!
 
Ajax
AjaxAjax
Ajax
 
Ajax
AjaxAjax
Ajax
 
Ajax
AjaxAjax
Ajax
 
Ajax
AjaxAjax
Ajax
 
Developing Series 40 web apps with Nokia Web Tools 2.0
Developing Series 40 web apps with Nokia Web Tools 2.0Developing Series 40 web apps with Nokia Web Tools 2.0
Developing Series 40 web apps with Nokia Web Tools 2.0
 
Ajax
AjaxAjax
Ajax
 
Transforming the web into a real application platform
Transforming the web into a real application platformTransforming the web into a real application platform
Transforming the web into a real application platform
 
Ajax
AjaxAjax
Ajax
 
The Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devicesThe Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devices
 

Último

Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
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
 
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
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
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
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
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
 
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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
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
 
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
 

Último (20)

Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
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
 
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
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
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
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
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
 
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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
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
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 

Ajax

  • 1. AJAX Ajax-based Applications Cancel Alexandru 4b Gavrilescu Andrei 3b
  • 2. • AJAX = Asynchronous JavaScript and XML. • AJAX is not a new programming language, but a new way to use existing standards. • AJAX is a technique of exchanging data with a server, and update parts of a web page - without reloading the whole page. What is Ajax?
  • 5. Faster web actions • Dynamic content • Less (or no) page refreshes • Reduce network traffic • Decrease server-side bandwidth usage • Web apps that rival installed GUI applications Why Ajax?
  • 6. • Intuitive and natural user interaction -No clicking required -Mouse movement is sufficient to trigger event • “Partial screen update” replaces the “click, wait, and refresh” user interaction model -Only user interface elements that contain new information are updated (fast response) -The rest of the user interface ramains displayed without interruption (no loss of operational context) Why Ajax?
  • 7. • Data driven (as oposed to page-driven) -UI is handled in the client while server provides data • Asynchronous communication replaces “synchronous request/response model” -A user can continue to use the application while the client program requests information from the server in the background -Separation of displaying from data fetching Why Ajax?
  • 8. Typical use cases for Ajax would be: • situations where only parts of a page needs to be updated in general • use ajax to speed things up, not to slow things down! • form submissions • show and hide stuff • image slide shows • Client side input validation Ajax uses
  • 9. • Windows Live Mail • Google -Google mail -Google maps -Google Suggests • Yahoo! Flickr • Meebo Who uses AJAX?
  • 11. • The map is broken up into a grid of 256x256 images (something like an old tile-based scrolling console game) • These images are absolutely positioned - and the 'infinite' scrolling effect is achieved by picking up tiles that are off- screen on one end and placing them down on the other end Google maps
  • 12. Getting the images • each tile represents a known area specified in longitude and latitude, at a given zoom level • getting map images - all you have to do is set an image tile's URL http://mt.google.com/mt?v=.1&x={x tile index}&{y tile index}=2&zoom={zoom level} • when a user moves or "drags" a map on Google, new tiles are loaded just beyond the visible edges of the screen. Google maps-server communication
  • 13. Searching • you can't 'submit' the entire page, because that would destroy your map and other context • solution is to submit a hidden IFrame, then gather the search results from it (it also preserves browser history) • The result is loaded into the hidden IFrame which, when loaded, will sent a XML back up to the outer frame's _load() function. This saves the outer frame from having to determine when the IFrame is done loading. Google maps-server communication
  • 14. XML response sample <?xml version="1.0"?> <page> <title>atlanta</title> <query>atlanta</query> <center lat="33.748889" lng="-84.388056"/> <span lat="0.089988" lng="0.108228"/> <overlay panelStyle="/mapfiles/geocodepanel.xsl"> <location infoStyle="/mapfiles/geocodeinfo.xsl" id="A"> <point lat="33.748889" lng="-84.388056"/> <icon class="noicon"/> <info> <title xml:space="preserve"></title> <address> <line>Atlanta, GA</line> </address> </info></location></overlay></page> Google maps-server communication
  • 15. • The JavaScript then uses the XSLTProcessor component to apply an XSLT to the result XML( done on the client) • This generates the HTML which is then shown in the right panel Google maps
  • 16. • Google Maps is probably the best-known Ajax application. Functionally, it offers some great advances over conventional map websites Google maps Conclusion
  • 17. Ajax on mobile devices
  • 18. • only a subset of mobile devices can fully use Ajax-powered websites • most websites are not optimized for mobile devices • Ajax is an attractive way to develop applications for bandwidth- constrained devices and environments Ajax on mobile devices
  • 19. • it can help address battery, bandwidth, latency and smooth multimedia issues • sites such as Google and FaceBook have customized the HTML sent to mobile devices to better address the characteristics of these devices. Ajax on mobile devices
  • 20. The following browsers are known to support AJAX to some degree: • Opera Mobile (>= 8.x, not Opera Mini) • Internet Explorer Mobile (WM 5.0/2003) • S60 3rd edition (WebKit/KHTML core) • Minimo (Gecko-based) • OpenWave (>=Mercury) • NetFront (>=3.4) • Safari Mobile (iPhone) Ajax on mobile devices
  • 21. • Fetched content does not register with browser history • Search engines may not be able to index all pages • Inaccurate Back & Forward button actions Ajax Disadvantages?
  • 22. • JavaScript can be easily disabled from client side • JavaScript may tax older machines CPU • May be disabled (for security reasons) or not available on some browsers • Cross Browser Issues can be a pain Ajax Disadvantages?
  • 23. • Very powerfull when used appropriately • It’s a method not a necessity • Do not rely on it if possible.Have an alternate if it fails. Conclusion
  • 25. Sources: • http://en.wikipedia.org/wiki/Ajax_(programming) • http://www.adaptivepath.com/ideas/ajax-new-approach-web- applications • http://www.openajax.org/whitepapers/Introduction%20to%20Mobile %20Ajax • http://web.archive.org/web/20050331002145/jgwebber.blogspot.com/ 2005/02/mapping-google.html%20for%20Developers.php The end