ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Web Browser Extension Development Pandaciuc Gheorghe Ilie  Grupa:4A
Ce este o extensie de browser? O extensie de browser este un program care adaugă noi funcţionalități unui browser web, de exemplu winamp toolbar ne permite să controlăm winamp-ul direct din browser .
Structura unei extensii Metadata information User interface extension functionality
Particularități în funcție de browser Una din problemele principale care face ca extensiile pentru Internet Explorer să fie greu de dezvoltat este acela că trebuie create in C sau in .Net pe când la extensiile pentru Firefox sau Chrome folosim JavaScript-ul care este mult mai simplu.  Extensia fișierului diferă la fiecare browser în parte: Mozilla Firefox- > . xpi, Google Chrome-> . crx, Internet Explorer-> . exe   Microsoft Internet Explorer a început să suporte extensii de la versiunea 5, Google Chrome  de la versiunea 4, Opera a acceptat extensii de la versiunea 10, iar Safari  a început să suporte extensii native de la versiunea 5.
Extensii pentru Mozilla Firefox Extensiile pentru Firefox sunt împachetate intr-un fisier cu extensia .xpi. Un exemplu cu conținutul unui fisier .xpi arată cam așa:
Structura folderului install.rdf chrome.manifest chromecontentsample.xul
Exemple  install.rdf <?xml version=&quot;1.0&quot;?> <RDF   xmlns=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:em=&quot;http://www.mozilla.org/2004/em-rdf#&quot;>  <Description about=&quot;urn:mozilla:install-manifest&quot;> <!-- properties --> </Description>  </RDF>
Example XUL Overlay Document <?xml version=&quot;1.0&quot;?> <overlay id=&quot;sample&quot; xmlns=&quot; http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul &quot;> <statusbar id=&quot; status-bar &quot;> <statusbarpanel id=&quot;my-panel&quot; label=&quot;Hello, World&quot; /> </statusbar> </overlay>
Example chrome manifest
Cele mai cunoscute e xtensii Firefox AdBlock Plus Firebug Delicious Video DownloadHelper GreaseMonkey FasterFox
Extensii pentru Google Chrome Extensiile pentru Chrome sunt împachetate într-un fisier cu extensia .crx. Un exemplu cu conținutul unui fisier .crx arată cam așa: • un   fisier   manifest • unul   sau   mai   multe   fisiere   HTML   •op ț ional:unul   sau   mai   multe   fisiere   javascript   • op țional:alte tipuri de fișiere
{ &quot;name&quot;: &quot;My First Extension&quot;, &quot;version&quot;: &quot;1.0&quot;, &quot;description&quot;: &quot;The first extension that I made.&quot;, &quot;browser_action&quot;: { &quot;default_icon&quot;: &quot;icon.png&quot;, &quot;popup&quot; : &quot;popup.html&quot; }, &quot;permissions&quot;: [ &quot;http://api.flickr.com/&quot; ] } manifest.json Exemplu
<style> body { min-width:357px; overflow-x:hidden; } img { margin:5px; border:2px solid black; vertical-align:middle; width:75px; height:75px; } </style> ... popup.html Exemplu
<script> var req = new XMLHttpRequest(); req.open( &quot;GET&quot;, &quot;http://api.flickr.com/services/rest/?&quot; + &quot;method=flickr.photos.search&&quot; + &quot;api_key=90485e931f687a9b9c2a66bf58a3861a&&quot; + &quot;text=hello%20world&&quot; + &quot;safe_search=1&&quot; +  // 1 is &quot;safe&quot; &quot;content_type=1&&quot; +  // 1 is &quot;photos only&quot; &quot;sort=relevance&&quot; +  // another good one is &quot;interestingness-desc&quot; &quot;per_page=20&quot;, true); req.onload = showPhotos; req.send(null); … </script> popup.html Exemplu
<script> ... function showPhotos() { var photos = req.responseXML.getElementsByTagName(&quot;photo&quot;); for (var i = 0, photo; photo = photos[i]; i++) { var img = document.createElement(&quot;image&quot;); img.src = /slideshow/web-browser-extension-development-10929640/10929640/constructImageURL(photo); document.body.appendChild(img); } } // See: http://www.flickr.com/services/api/misc.urls.html function constructImageURL(photo) { return &quot;http://farm&quot; + photo.getAttribute(&quot;farm&quot;) + &quot;.static.flickr.com/&quot; + photo.getAttribute(&quot;server&quot;) + &quot;/&quot; + photo.getAttribute(&quot;id&quot;) + &quot;_&quot; + photo.getAttribute(&quot;secret&quot;) + &quot;_s.jpg&quot;; } </script> popup.html Exemplu
Cele mai cunoscute e xtensii Chrome Gmail Checker PageRank Chrome Gestures Google Talk GBX: Google Bookmarks Extension  FastestChrome
Extensii pentru Internet Explorer O modalitate simpl ă  de a crea extensii pentru Internet Explorer f ă r ă  a scrie prea mult cod se poate realiza folosind Add-in Express.Aceasta modalitate este compatibil ă   î ncepanda cu Internet Explorer 6.  În schimb dacă nu vă place să programați în C sau în .Net atunci ați putea încerca să folosiți  Crossrider  care vă permite sa creați o extensie pentru IE folosind cod JavaScript.
Mai multe despre  Crossrider Crossrider  este uun framework JavaScript ușor de folosit pentru a crea extensii de browser în doar câteva minute. Momentan acesta suportă Mozilla Firefox, Google Chrome și Internet Explorer.
Cele mai cunsoscute extensii pentru Internet Explorer Altavista toolbar ; Alexa toolbar; Fiddler; Earthlink toolbar ; LuckyTabSave; Zemanta ;
Bibliografie https://developer.mozilla.org/en/Chrome_Registration http://code.google.com/chrome/extensions/manifest.html   http://crossrider.com/   http://code.google.com/chrome/extensions/getstarted.html   http://en.wikipedia.org/wiki/Browser_extension   https://developer.mozilla.org/en/Extensions

More Related Content

Web browser extension development

  • 1. Web Browser Extension Development Pandaciuc Gheorghe Ilie Grupa:4A
  • 2. Ce este o extensie de browser? O extensie de browser este un program care adaugă noi funcÅ£ionalități unui browser web, de exemplu winamp toolbar ne permite să controlăm winamp-ul direct din browser .
  • 3. Structura unei extensii Metadata information User interface extension functionality
  • 4. Particularități în funcÈ›ie de browser Una din problemele principale care face ca extensiile pentru Internet Explorer să fie greu de dezvoltat este acela că trebuie create in C sau in .Net pe când la extensiile pentru Firefox sau Chrome folosim JavaScript-ul care este mult mai simplu. Extensia fiÈ™ierului diferă la fiecare browser în parte: Mozilla Firefox- > . xpi, Google Chrome-> . crx, Internet Explorer-> . exe   Microsoft Internet Explorer a început să suporte extensii de la versiunea 5, Google Chrome  de la versiunea 4, Opera a acceptat extensii de la versiunea 10, iar Safari  a început să suporte extensii native de la versiunea 5.
  • 5. Extensii pentru Mozilla Firefox Extensiile pentru Firefox sunt împachetate intr-un fisier cu extensia .xpi. Un exemplu cu conÈ›inutul unui fisier .xpi arată cam aÈ™a:
  • 6. Structura folderului install.rdf chrome.manifest chromecontentsample.xul
  • 7. Exemple install.rdf <?xml version=&quot;1.0&quot;?> <RDF xmlns=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:em=&quot;http://www.mozilla.org/2004/em-rdf#&quot;> <Description about=&quot;urn:mozilla:install-manifest&quot;> <!-- properties --> </Description> </RDF>
  • 8. Example XUL Overlay Document <?xml version=&quot;1.0&quot;?> <overlay id=&quot;sample&quot; xmlns=&quot; http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul &quot;> <statusbar id=&quot; status-bar &quot;> <statusbarpanel id=&quot;my-panel&quot; label=&quot;Hello, World&quot; /> </statusbar> </overlay>
  • 10. Cele mai cunoscute e xtensii Firefox AdBlock Plus Firebug Delicious Video DownloadHelper GreaseMonkey FasterFox
  • 11. Extensii pentru Google Chrome Extensiile pentru Chrome sunt împachetate într-un fisier cu extensia .crx. Un exemplu cu conÈ›inutul unui fisier .crx arată cam aÈ™a: • un fisier manifest • unul sau mai multe fisiere HTML •op È› ional:unul sau mai multe fisiere javascript • op È›ional:alte tipuri de fiÈ™iere
  • 12. { &quot;name&quot;: &quot;My First Extension&quot;, &quot;version&quot;: &quot;1.0&quot;, &quot;description&quot;: &quot;The first extension that I made.&quot;, &quot;browser_action&quot;: { &quot;default_icon&quot;: &quot;icon.png&quot;, &quot;popup&quot; : &quot;popup.html&quot; }, &quot;permissions&quot;: [ &quot;http://api.flickr.com/&quot; ] } manifest.json Exemplu
  • 13. <style> body { min-width:357px; overflow-x:hidden; } img { margin:5px; border:2px solid black; vertical-align:middle; width:75px; height:75px; } </style> ... popup.html Exemplu
  • 14. <script> var req = new XMLHttpRequest(); req.open( &quot;GET&quot;, &quot;http://api.flickr.com/services/rest/?&quot; + &quot;method=flickr.photos.search&&quot; + &quot;api_key=90485e931f687a9b9c2a66bf58a3861a&&quot; + &quot;text=hello%20world&&quot; + &quot;safe_search=1&&quot; + // 1 is &quot;safe&quot; &quot;content_type=1&&quot; + // 1 is &quot;photos only&quot; &quot;sort=relevance&&quot; + // another good one is &quot;interestingness-desc&quot; &quot;per_page=20&quot;, true); req.onload = showPhotos; req.send(null); … </script> popup.html Exemplu
  • 15. <script> ... function showPhotos() { var photos = req.responseXML.getElementsByTagName(&quot;photo&quot;); for (var i = 0, photo; photo = photos[i]; i++) { var img = document.createElement(&quot;image&quot;); img.src = /slideshow/web-browser-extension-development-10929640/10929640/constructImageURL(photo); document.body.appendChild(img); } } // See: http://www.flickr.com/services/api/misc.urls.html function constructImageURL(photo) { return &quot;http://farm&quot; + photo.getAttribute(&quot;farm&quot;) + &quot;.static.flickr.com/&quot; + photo.getAttribute(&quot;server&quot;) + &quot;/&quot; + photo.getAttribute(&quot;id&quot;) + &quot;_&quot; + photo.getAttribute(&quot;secret&quot;) + &quot;_s.jpg&quot;; } </script> popup.html Exemplu
  • 16. Cele mai cunoscute e xtensii Chrome Gmail Checker PageRank Chrome Gestures Google Talk GBX: Google Bookmarks Extension FastestChrome
  • 17. Extensii pentru Internet Explorer O modalitate simpl ă de a crea extensii pentru Internet Explorer f ă r ă a scrie prea mult cod se poate realiza folosind Add-in Express.Aceasta modalitate este compatibil ă î ncepanda cu Internet Explorer 6. ÃŽn schimb dacă nu vă place să programaÈ›i în C sau în .Net atunci aÈ›i putea încerca să folosiÈ›i Crossrider care vă permite sa creaÈ›i o extensie pentru IE folosind cod JavaScript.
  • 18. Mai multe despre Crossrider Crossrider este uun framework JavaScript uÈ™or de folosit pentru a crea extensii de browser în doar câteva minute. Momentan acesta suportă Mozilla Firefox, Google Chrome È™i Internet Explorer.
  • 19. Cele mai cunsoscute extensii pentru Internet Explorer Altavista toolbar ; Alexa toolbar; Fiddler; Earthlink toolbar ; LuckyTabSave; Zemanta ;
  • 20. Bibliografie https://developer.mozilla.org/en/Chrome_Registration http://code.google.com/chrome/extensions/manifest.html http://crossrider.com/ http://code.google.com/chrome/extensions/getstarted.html http://en.wikipedia.org/wiki/Browser_extension https://developer.mozilla.org/en/Extensions