<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Netsetters weblog &#187; Web application</title>
	<atom:link href="http://www.netsetters.nl/tag/web-application/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.netsetters.nl</link>
	<description>Programming, User Experience and IA</description>
	<lastBuildDate>Sat, 07 Aug 2010 12:56:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Safari tips voor IPhone en IPad (iOS)</title>
		<link>http://www.netsetters.nl/2010/06/safari-tips-voor-iphone-en-ipad-ios/</link>
		<comments>http://www.netsetters.nl/2010/06/safari-tips-voor-iphone-en-ipad-ios/#comments</comments>
		<pubDate>Wed, 16 Jun 2010 20:55:07 +0000</pubDate>
		<dc:creator>Maurice Lourens</dc:creator>
				<category><![CDATA[visualisation]]></category>
		<category><![CDATA[Apple Inc.]]></category>
		<category><![CDATA[Data Formats]]></category>
		<category><![CDATA[FAQs Help and Tutorials]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Markup Languages]]></category>
		<category><![CDATA[mobiele applicaties]]></category>
		<category><![CDATA[Safari]]></category>
		<category><![CDATA[Safari Mobile]]></category>
		<category><![CDATA[Web application]]></category>
		<category><![CDATA[Website]]></category>

		<guid isPermaLink="false">http://www.netsetters.nl/?p=363</guid>
		<description><![CDATA[Ondertussen zijn wij ook mee gaan doen met de IPad gekte. Maar voordat je apps gaat ontwikkelen zijn er al heel wat mogelijkheden in de browser van deze aparaten. Safari biedt voor web-applicatie ontwikkelaars speciale tags. Hierdoor kunnen we applicaties ontwikkelen en deze via de website gelijk aanbieden, zonder gebruik te maken van de appstore.]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.netsetters.nl%2F2010%2F06%2Fsafari-tips-voor-iphone-en-ipad-ios%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.netsetters.nl%2F2010%2F06%2Fsafari-tips-voor-iphone-en-ipad-ios%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignright" style="width: 210px;">
<dt class="wp-caption-dt"><a href="http://commons.wikipedia.org/wiki/File:Apple_iPad_Event03.jpg"><img title="iPad with on display keyboard" src="http://upload.wikimedia.org/wikipedia/commons/thumb/c/c9/Apple_iPad_Event03.jpg/300px-Apple_iPad_Event03.jpg" alt="iPad with on display keyboard" width="200" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image via <a href="http://commons.wikipedia.org/wiki/File:Apple_iPad_Event03.jpg">Wikipedia</a></dd>
</dl>
</div>
</div>
<p>Ondertussen zijn wij ook mee gaan doen met de IPad gekte. Maar voordat je apps gaat ontwikkelen zijn er al heel wat mogelijkheden in de browser van deze aparaten. Safari biedt voor web-applicatie ontwikkelaars speciale tags. Hierdoor kunnen we applicaties ontwikkelen en deze via de website gelijk aanbieden, zonder gebruik te maken van de appstore.</p>
<p><span id="more-363"></span></p>
<h2>Ken het plusje</h2>
<p>Op de IPad in de Safari-browser zit een plus icoontje, hiermee kan je een webpagina snelkoppeling op je &#8216;desktop&#8217; zetten.  Naast dat het erg handig is dat je snel een webpagina op kan roepen, geeft het je ok de mogelijkheid om een applicatie bijna &#8216;native&#8217; te laten draaien op je IPad.</p>
<h2>Maak zelf je desktop icoon</h2>
<p>Door middel van <strong>apple-touch-icon</strong> link kan je een icoon aangeven die gebruikt wordt als snelkoppeling. Het icoon moet een <strong>PNG</strong> zijn van <strong>45px </strong>bij <strong>45px</strong>. Deze kan je daarna linken in de head van je pagina.</p>
<pre class="brush: xml;">
&lt;link rel=&quot;apple-touch-icon&quot; href=&quot;/apple-touch-icon.png&quot; /&gt;
</pre>
<p>Apple gooit er automatisch een glas-effect overheen, wil je dit niet hebben gebruik dan <strong>apple-touch-icon-precomposed</strong></p>
<pre class="brush: xml;">
&lt;link rel=&quot;apple-touch-icon-precomposed&quot; href=&quot;/apple-touch-icon.png&quot; /&gt;
</pre>
<h2>Web-applicatie Full Screen op je IPhone en IPad</h2>
<p>Door de volgende meta informatie te plaatsen in je &lt;head&gt; van je website kan je de applicatie fullscreen zonder zichtbaar browserscherm laten draaien nadat deze is toegevoegd aan de &#8216;desktop&#8217; met het plusje.</p>
<pre class="brush: xml;">&lt;meta name=&quot;apple-mobile-web-app-capable&quot; content=&quot;yes&quot;&gt;</pre>
<p>Door de waarde van <strong>apple-mobile-web-app-capable</strong> op &#8220;yes&#8221; te zetten zal de applicatie op fullscreen draaien. Hierdoor zal het op een volwaardige applicatie lijken. Je kan in je javascript ook kijken of een pagina in fullscreenmode draaid (en daar je inhoud of css op aanpassen) door gebruik te maken van de <strong>window.navigator.standalone</strong> boolean waarde.</p>
<pre class="brush: jscript;">
if(window.navigator.standalone) {
	alert(&quot;ik draai fullscreen als applicatie&quot;);
} else {
	alert(&quot;ik draai in een browser&quot;);
}
</pre>
<h2>Negeer de automatische telefoonnummer links</h2>
<p>Als je al eens een web-applicatie  of website voor de IPhone of IPad ebt gemaakt zal je zien dat alle op telefoonnummer lijkende nummerreeksen als bel-link worden aangemaakt. Hierdoor kan je direct eenn telefoonnummer bellen als  deze in een website staat. Dit kan erg handig zijn, maar soms wil je niet dat dit gedrag voorkomt. Daarvoor is ook een meta-tag.</p>
<pre class="brush: xml;">
&lt;meta name=&quot;format-detection&quot; content=&quot;telephone=no&quot;&gt;
</pre>
<p>Door de <strong>format-detecion</strong> waarde op &#8220;no&#8221; te zetten voorkom je dat de telefoonnummers (of daarop gelijkende nummer-reeksen) automatisch worden gelinkt. Mocht je dan onverhoopt toch een telefoonnummer willen linken kan dat altijd nog door middel van een normale link.</p>
<pre class="brush: xml;">
&lt;a href=&quot;tel:0111-422622&quot;&gt;0111-422622&lt;/a&gt;
</pre>
<h2>Kies zelf je toetsenbord</h2>
<p>Op de iphone en IPad heb je verschillende toetsenborden. Om snel de goede toetsenborden tevoorschijn te toveren kna je ook gebruikmaken</p>
<pre class="brush: xml;">
Tekst: &lt;input type=&quot;text&quot; /&gt; &lt;!-- standaard toetsenbord --&gt;
Telefoon: &lt;input type=&quot;tel&quot; /&gt; &lt;!-- telefoon toetsenbord --&gt;
Homepage: &lt;input type=&quot;url&quot; /&gt; &lt;!-- web-adres toetsenbord --&gt;
E-mail: &lt;input type=&quot;email&quot; /&gt; &lt;!-- e-mail toetsenbord --&gt;
Leeftijd: &lt;input type=&quot;text&quot; pattern=&quot;[0-9]*&quot; /&gt; &lt;!-- numeriek toetsenbord --&gt;
</pre>
<p>Ook kan je de automatische tekstcorrectie uitzetten voor input velden:</p>
<pre class="brush: xml;">
&lt;input type=&quot;text&quot; autocorrect=&quot;off&quot; /&gt;
</pre>
<h2>Draaien met het scherm</h2>
<p>Het kan zijn dat je web-applicatie zich moet aanpassen als het apparaat wordt gedraaid, en daardoor het formaat van je scherm anders wordt. Hierdoor moet je soms veranderingen in je css of javascript doorvoeren. Daarom bestaan er in Safari Mobile verschillende methoden om hiermee om ta gaan. Allereerst is er het event, onorientationchange, hiermee kan je een bepaalde functie aanroepen als de oriëntatie van de pagina wordt veranderd.</p>
<pre class="brush: xml;">
&lt;body onorientationchange=&quot;myOrientationChangeFunction()&quot;&gt;
</pre>
<p>In javascript kan de oriëntatie van het  scherm worden opgevraagd door middel van de window.orientation:</p>
<ul>
<li>window.orientation is 0 wanneer het apparaat verticaal wordt gehouden</li>
<li>window.orientation is 90 wanneer het apparaat 90 graden naar links (tegen de klok in) is gedraaid (horizontaal).</li>
<li>window.orientation is -90 wanneer het apparaat 90 graden naar rechts (met de klok mee) is gedraaid (horizontaal).</li>
</ul>
<p>Ook kan je css file worden aangepast op je scherm oriëntatie:</p>
<pre class="brush: xml;">
&lt;link rel=&quot;stylesheet&quot; media=&quot;all and (orientation:portrait)&quot; href=&quot;portrait.css&quot;&gt;
&lt;link rel=&quot;stylesheet&quot; media=&quot;all and (orientation:landscape)&quot; href=&quot;landscape.css&quot;&gt;
</pre>
<h2>(automatisch) zoomen; de viewport</h2>
<p>Je IPhone of IPad zal een website proberen te schalen zodat deze het beste zichtbaar is. Deze berekening van de viewport kan soms irritant zijn. Daarom kan je de initiële schaal vastzetten. Dit kan bijvoorbeeld op de breedte van ht scherm</p>
<pre class="brush: xml;">
&lt;meta name = &quot;viewport&quot; content = &quot;width = device-width&quot;&gt;
</pre>
<p>Of zet de breedte op 100% , dan maak je geen gebruik van de automatische zoom</p>
<pre class="brush: xml;">
&lt;meta name = &quot;viewport&quot; content = &quot;initial-scale = 1.0&quot;&gt;
</pre>
<p>Daarnaast kan je er ook nog voor zorgen dat de gebruiker niet kan in- of uit-zoomen en een vaste initiële zoom van 230%</p>
<pre class="brush: xml;">
&lt;meta name = &quot;viewport&quot; content = &quot;initial-scale = 2.3, user-scalable = no&quot;&gt;
</pre>
<h2>Nog meer mogelijkheden op IPhone en IPad</h2>
<p>Naast deze meest gebruikte technieken bestaan er nog meer eigenschappen specifiek voor de mobile versie van Safari op iOS. Bovenstaande technieken zullen ook de discussie aanwakkeren of  het wel nodig is om een applicatie via de Appstore toe te voegen. Soms is het namelijk veel handiger om de web-applicatie direct via de website aan te bieden als link.</p>
<h6 class="zemanta-related-title" style="font-size: 1em;">Related articles by Zemanta</h6>
<ul class="zemanta-article-ul">
<li class="zemanta-article-ul-li"><a href="http://zef.me/3323/safari-5-html5-faster-js-reader">Safari 5: HTML5, Faster JS, Reader</a> (zef.me)</li>
<li class="zemanta-article-ul-li"><a href="http://news.cnet.com/8301-13579_3-20006810-37.html?part=rss&amp;subj=news&amp;tag=2547-1_3-0-20">Apple posts HTML 5 demo page</a> (news.cnet.com)</li>
<li class="zemanta-article-ul-li"><a href="http://mashable.com/2010/06/04/apple-html5-showcase/">Apple Shows Us What HTML5 Can Do</a> (mashable.com)</li>
<li class="zemanta-article-ul-li"><a href="http://www.lockergnome.com/it/2010/06/04/html5-to-apple-youre-doing-it-wrong/">HTML5 To Apple, You&#8217;re Doing It Wrong</a> (lockergnome.com)</li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Enhanced by Zemanta" href="http://www.zemanta.com/"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/zemified_e.png?x-id=02e395cb-0add-4233-912d-935a86ea741c" alt="Enhanced by Zemanta" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
<img src="http://www.netsetters.nl/?ak_action=api_record_view&id=363&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.netsetters.nl/2010/06/safari-tips-voor-iphone-en-ipad-ios/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How JavaScript frameworks contribute to a consistent experience</title>
		<link>http://www.netsetters.nl/2009/10/how-javascript-frameworks-contribute-to-a-consistent-experience/</link>
		<comments>http://www.netsetters.nl/2009/10/how-javascript-frameworks-contribute-to-a-consistent-experience/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 20:19:55 +0000</pubDate>
		<dc:creator>Maurice Lourens</dc:creator>
				<category><![CDATA[logic]]></category>
		<category><![CDATA[visualisation]]></category>
		<category><![CDATA[Ext]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[Languages]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Scripts]]></category>
		<category><![CDATA[User interface]]></category>
		<category><![CDATA[Web application]]></category>

		<guid isPermaLink="false">http://www.netsetters.nl/?p=55</guid>
		<description><![CDATA[Why using a JavaScript framework for your rich web-application? Consistency, speed and... did I mention consistency?]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.netsetters.nl%2F2009%2F10%2Fhow-javascript-frameworks-contribute-to-a-consistent-experience%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.netsetters.nl%2F2009%2F10%2Fhow-javascript-frameworks-contribute-to-a-consistent-experience%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignright" style="width: 250px;">
<dt class="wp-caption-dt"><a href="http://www.flickr.com/photos/19451080@N00/2817382276"><img title="JQuery new site" src="http://farm4.static.flickr.com/3289/2817382276_4a4fd49075_m.jpg" alt="JQuery new site" width="240" height="185" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image by <a href="http://www.flickr.com/photos/19451080@N00/2817382276">Phillie Casablanca</a> via Flickr</dd>
</dl>
</div>
</div>
<p><strong><a class="zem_slink freebase/guid/9202a8c04000641f8000000000015527" title="JavaScript" rel="wikipedia" href="http://en.wikipedia.org/wiki/JavaScript">JavaScript</a> Libraries started out as easy frameworks for web developers.  Why write code that’s already been written and, in most cases, better than home-made JavaScript? It also provides a consistent way of programming throughout a project and a fast way to build applications.</strong></p>
<p><a class="zem_slink freebase/guid/9202a8c04000641f8000000004643bb5" title="JQuery" rel="homepage" href="http://jquery.com/">JQuery</a> UI and <a class="zem_slink freebase/guid/9202a8c04000641f800000000566b41f" title="Ext (JavaScript library)" rel="homepage" href="http://extjs.com/">Ext</a> JS, Prototype,  YahooUI all grew to complete JavaScript platforms with familiar design elements that help programmers build an interface that people are used to.  JQuery even has an own themeroller where programmers can generate a whole css theme for their interface.</p>
<h3><strong>Building bridges</strong></h3>
<p>The new generation of JavaScript libraries are building a small (but hopeful) bridge between designers and developers. Designers can understand the concept, en have consistent elements to work with. Developers can integrate these elements easily within their projects.</p>
<h3><strong>Cross browser, cross <a class="zem_slink freebase/guid/9202a8c04000641f800000000002c5ef" title="Operating system" rel="wikipedia" href="http://en.wikipedia.org/wiki/Operating_system">OS</a></strong></h3>
<p>The acceptance of these libraries among developers and designers is a great step to a consistent experience of web applications. we all recognize widgets, sliders, tabs,  tree&#8217;s and we know how to operate them. Consistency is crucial when building rich web-applications. It does not depend on browser or OS, just the library used.</p>
<h3>Skepticism</h3>
<p>Of course there are some reasons why NOT to use a library. Programmers want to know what&#8217;s happening, mainly for debugging reasons, It can be a bit bloated when only using one or two functions and the biggest reason: You shouldn’t trust the code of others for your professional purposes. The latest versions of the various frameworks take away most of these worries with good debug option and even better performance.</p>
<h6 class="zemanta-related-title" style="font-size: 1em;">Related articles by Zemanta</h6>
<ul class="zemanta-article-ul">
<li class="zemanta-article-ul-li"><a href="http://www.noupe.com/jquery/jquery-tools.html">jQuery Tools: The missing UI library for the Web</a> (noupe.com)</li>
<li class="zemanta-article-ul-li"><a href="http://ajaxian.com/archives/prototype-161-speed-up-clean-up-and-team-up">Prototype 1.6.1; Speed up, clean up, and team up</a> (ajaxian.com)</li>
<li class="zemanta-article-ul-li"><a href="http://www.slideshare.net/ajaxexperience2009/colin-clark-accessible-u-is-with-j-query-and-infusion1">Colin Clark Accessible U Is With J Query And Infusion[1]</a> (slideshare.net)</li>
</ul>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/05a2cb26-1b73-4b7c-97ac-6493aac67917/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=05a2cb26-1b73-4b7c-97ac-6493aac67917" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related more-info pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
<img src="http://www.netsetters.nl/?ak_action=api_record_view&id=55&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.netsetters.nl/2009/10/how-javascript-frameworks-contribute-to-a-consistent-experience/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
