<?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/"
	>

<channel>
	<title>Smyrna İnternet Hizmetleri &#187; Programlama</title>
	<atom:link href="http://blog.smyrna.com.tr/tr/programlama/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.smyrna.com.tr</link>
	<description>Smyrna Blog</description>
	<pubDate>Thu, 17 Dec 2009 12:25:24 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Wordpress SEO Detayları</title>
		<link>http://blog.smyrna.com.tr/seo/wordpres-seo.html</link>
		<comments>http://blog.smyrna.com.tr/seo/wordpres-seo.html#comments</comments>
		<pubDate>Tue, 13 Jan 2009 13:00:23 +0000</pubDate>
		<dc:creator>Mehmet Tahta</dc:creator>
		
		<category><![CDATA[Programlama]]></category>

		<category><![CDATA[SEO]]></category>

		<category><![CDATA[arama motoru optimizasyonu]]></category>

		<category><![CDATA[search engine optimization]]></category>

		<category><![CDATA[wordpress]]></category>

		<category><![CDATA[wordpress eklentileri]]></category>

		<category><![CDATA[wordpress seo]]></category>

		<guid isPermaLink="false">http://blog.smyrna.com.tr/?p=70</guid>
		<description><![CDATA[Wordpress mükemmel bir blog betiği ve eğer iyi kullanmasını biliyorsanız mükemmel verim alabileceğiniz bir sistem. Gerek kullanımı açısından, gerekse pluginleri açısından oldukça basit bir sistem. Çok fazla vakit harcamadan birçok şeyi wordpress ile yapmanız mümkün.
hitman.gen.tr üzerinde yaptığım değişikliklerden yola çıkacak olursak öncelikle şart olarak gördüğüm birkaç eklenti mevcut.

All in one seo pack
Dagon design sitemap generator
Simple [...]]]></description>
			<content:encoded><![CDATA[<p>Wordpress mükemmel bir blog betiği ve eğer iyi kullanmasını biliyorsanız mükemmel verim alabileceğiniz bir sistem. Gerek kullanımı açısından, gerekse pluginleri açısından oldukça basit bir sistem. Çok fazla vakit harcamadan birçok şeyi wordpress ile yapmanız mümkün.<span id="more-70"></span></p>
<p><strong>hitman.gen.tr</strong> üzerinde yaptığım değişikliklerden yola çıkacak olursak öncelikle şart olarak gördüğüm birkaç eklenti mevcut.</p>
<ul>
<li><a href="http://wordpress.org/extend/plugins/all-in-one-seo-pack/" target="_blank">All in one seo pack</a></li>
<li><a href="http://www.dagondesign.com/articles/sitemap-generator-plugin-for-wordpress/" target="_blank">Dagon design sitemap generator</a></li>
<li><a href="http://wordpress.org/extend/plugins/simple-tags/" target="_blank">Simple tags</a></li>
<li><a href="http://wordpress.org/extend/plugins/google-sitemap-generator/">Google XML Sitemaps</a></li>
</ul>
<p>İşte bu eklentileri benim vazgeçilmezlerim olarak niteleyebilirim.</p>
<p><strong>All in one seo pack</strong> eklentisi sayesinde her yazım için oldukça geniş kapsamlı bir meta tag düzenleme imkanına sahip oluyorum. Bu eklenti kurulduğu zaman hem yönetim panelinde bir seçenekler sayfası oluşuyor -<em>bu eklenti için</em>- hem de yazı yazdığınız sayfa içerisinde all in one seo pack seçeneğinden o anda yazmakta olduğunuz yazı için <strong>title</strong>, <strong>description</strong>, <strong>keyword</strong> gibi meta tagları kendiniz oluşturabiliyorsunuz. Sevdiğim güzel yanı ise description seçeneğindeki harf sayma özelliği. Yazmış olduğunuz description satırındaki karakter sayısını hesaplıyor.<br />
Biliyorsunuz ki çoğu arama motoru <strong>160</strong> karakterden sonrasına bakmaz, eğer aşırı abartırsanız da sitenize/sayfanıza spam gözüyle bakar. Bu description satırına mantıklı, hedef keywordü içeren ve 160 karakteri <span style="text-decoration: underline;">aşmayan</span> bir metin girmek gereklidir. Unutmamak gerekiyor ki kullanıcı ilk olarak title, daha sonra da sayfa açıklamasına (description) bakar. Bu konu hakkında biraz daha detaylı bilgi için &#8221; <strong><a title="Yahoo! sıralamasında yükselmek" href="http://www.hitman.gen.tr/seo/yahoo-siralamasinda-yukselmek.html" target="_blank">Yahoo! sıralamasında yükselmek</a></strong> &#8221; başlıklı makalemi inceleyebilirsiniz. Ayrıca <a title="Google" href="http://www.hitman.gen.tr/tr/google" target="_blank"><strong>Google</strong></a> ve <a title="SEO, arama motoru optimizasyonu, search engine optimization" href="http://www.hitman.gen.tr/tr/seo" target="_blank"><strong>SEO</strong></a> kategorisindeki yazılarım da sizler için faydalı olacaktır, incelemenizi tavsiye ederim.</p>
<p><strong>Dagon design sitemap generator</strong> sayesinde gelişmiş bir site haritası hazırlayabiliyorum. Bu hazırladığım site haritasını da sıradan bir wordpress sayfası içerisinde oluşturabiliyorum.<em>(bkz: <a title="hitman.gen.tr site haritası" href="http://www.hitman.gen.tr/site-haritasi" target="_blank"><strong>Site haritası örneği</strong></a>)</em> Bu site haritası bölümünü de blog sayfamda gördüğünüz gibi footer kısmından link veriyorum. Böylelikle sayfalar arası geçişi sağlıyorum.</p>
<p><strong>Simple tags</strong> eklentisi sayesinde oldukça gelişmiş bir etiket yöneticisine sahip oluyorum. Wordpress ile birlikte gelen default tag özelliği oldukça gelişmiş sayılmaz. Bu eklenti sayesinde etiket kavramını oldukça iyi bir şekilde değerlendirebiliyorum. Eklenti oldukça gelişmiş bir yönetim paneline sahip. Örneğin X keyword limitine ulaşan kelimeleri tag olarak göster diyebiliyorum. Örneğin konu web tasarım ile ilgiliyse ve etikete web tasarım yazdıysam konu içerisindeki web tasarım kelimeleri otomatik olarak etikete dönüşüyor. Ve keyword kaç kere yazıldığı zaman etikete dönüşeceğini panelimden rahatlıkla kontrol edebiliyorum. Mesela dersiniz ki metin içerisinde 3 veya daha fazla geçen kelimeleri etikete çevir, etiket linkini ver.(<em>Bunu diyebilmek için kelimeyi etiketler arasına eklemiş olmanız şart.</em>) Böyle geniş bir düzenleme imkanı var. Şiddetle kullanmanızı tavsiye ediyorum. Gördüğüm en faydalı eklentilerden birisi, rahatlıkla sayfalarınız arasında geçişi sağlıyor. Tek kelimeyle mükemmel&#8230;</p>
<p><strong>Google XML Sitemaps</strong> eklentisi ise <a title="arne brachhold" href="http://www.arnebrachhold.de/" target="_blank">Arne Brachhold</a> tarafından yapılmış XML Sitemap eklentisi. <strong>(Örnek:</strong> <a title="sitemap, sitemaps, google sitemap" href="http://www.hitman.gen.tr/sitemap.xml" target="_blank">http://www.hitman.gen.tr/sitemap.xml</a><strong>) </strong>Bir web sitesi için olmazsa olmaz denilebilecek bir gereklilik. Mutlaka sitemap oluşturmalısınız ve bunu google webmaster araçları bölümünden kaydetmelisiniz. Sitemap hakkında detaylı bilgi için daha önce yazmış olduğum &#8221; <a title="Google sitemap sss, google, sitemap" href="http://www.hitman.gen.tr/seo/google-sitemap-sss.html" target="_blank"><strong>Google Sitemap SSS</strong></a> &#8221; ve &#8221; <a title="sitemap nedir, sitemap, sitemap ne işe yarar, sitemap kurulumu" href="http://www.hitman.gen.tr/seo/sitemap-nedir-nasil-kurulur-resimli-anlatim.html" target="_blank"><strong>Sitemap nedir, nasıl kurulur?</strong></a> &#8221; başlıklı makalelerimi inceleyebilirsiniz.</p>
<p>Dagon design sitemap generator ile oluşturduğum <strong>site haritası</strong> sayfasını ve Google XML Sitemaps eklentisi ile oluşturduğum <strong>sitemap.xml</strong> dosyasının linkini blogumun footer kısmına ekliyorum. Böylelikle daha önce de dagon design sitemap generator eklentisini anlatırken bahsettiğim gibi sayfalar arası geçişi sağlıyorum.</p>
<p>Yazdığım birbirine paralel, birbirini ilgilendiren yazıları konu içerisinde link olarak mutlaka veriyorum. Böylelikle hem okuyucular ulaşmak istedikleri konu hakkında daha detaylı bilgi sahibi oluyorlar, hem de sayfalar arası bağlantıyı güçlendirmiş oluyorum. Unutmamak gerekir ki sitenizi indexleyen botlar sayfalar arasında geçmekten hoşlanırlar. Bu yüzden yazınız içerisinde yazmış olduğunuz diğer yazılara bağlantı vermeniz oldukça önemlidir.</p>
<p>Wordpress ping sitelerini kullanıyorum. Böylelikle</p>
<blockquote><p>http://rpc.pingomatic.com/<br />
http://api.moreover.com/ping<br />
http://api.my.yahoo.com/rss/ping<br />
http://blogsearch.google.com/ping/RPC2<br />
http://ping.bitacoras.com<br />
http://ping.feedburner.com<br />
http://ping.syndic8.com/xmlrpc.php<br />
http://rpc.blogrolling.com/pinger/<br />
http://rpc.icerocket.com:10080/<br />
http://rpc.technorati.com/rpc/ping<br />
http://rpc.weblogs.com/RPC2<br />
http://topicexchange.com/RPC2<br />
http://www.blogdigger.com/RPC2<br />
http://www.blogoole.com/ping/<br />
http://www.popdex.com/addsite.php<br />
http://www.wasalive.com/ping/<br />
http://www.weblogues.com/RPC/<br />
http://api.feedster.com/ping<br />
http://ping.amagle.com/<br />
http://ping.blo.gs/<br />
http://ping.rootblog.com/rpc.php<br />
http://ping.weblogalot.com/rpc.php<br />
http://rcs.datashed.net/RPC2/<br />
http://rpc.blogbuzzmachine.com/RPC2<br />
http://rpc.newsgator.com/<br />
http://www.blogoon.net/ping/<br />
http://www.blogsnow.com/ping<br />
http://www.blogstreet.com/xrbin/xmlrpc.cgi<br />
http://www.lasermemory.com/lsrpc/<br />
http://www.newsisfree.com/RPCCloud<br />
http://www.snipsnap.org/RPC2<br />
http://blogsearch.google.com/ping/RPC2<br />
http://1470.net/api/ping<br />
http://api.feedster.com/ping<br />
http://api.moreover.com/RPC2<br />
http://api.moreover.com/ping<br />
http://api.my.yahoo.com/RPC2<br />
http://api.my.yahoo.com/rss/ping<br />
http://bblog.com/ping.php<br />
http://bitacoras.net/ping<br />
http://blog.goo.ne.jp/XMLRPC<br />
http://blogdb.jp/xmlrpc<br />
http://blogmatcher.com/u.php<br />
http://bulkfeeds.net/rpc<br />
http://coreblog.org/ping/<br />
http://mod-pubsub.org/kn_apps/blogchatt<br />
http://www.lasermemory.com/lsrpc/<br />
http://ping.amagle.com/<br />
http://ping.bitacoras.com<br />
http://ping.blo.gs/<br />
http://ping.bloggers.jp/rpc/<br />
http://ping.cocolog-nifty.com/xmlrpc<br />
http://ping.blogmura.jp/rpc/<br />
http://ping.exblog.jp/xmlrpc<br />
http://ping.feedburner.com<br />
http://ping.myblog.jp<br />
http://ping.rootblog.com/rpc.php<br />
http://ping.syndic8.com/xmlrpc.php<br />
http://ping.weblogalot.com/rpc.php<br />
http://ping.weblogs.se/<br />
http://pingoat.com/goat/RPC2<br />
http://rcs.datashed.net/RPC2/<br />
http://rpc.blogbuzzmachine.com/RPC2<br />
http://rpc.blogrolling.com/pinger/<br />
http://rpc.icerocket.com:10080/<br />
http://rpc.newsgator.com/<br />
http://rpc.pingomatic.com<br />
http://rpc.technorati.com/rpc/ping<br />
http://rpc.weblogs.com/RPC2<br />
http://topicexchange.com/RPC2<br />
http://trackback.bakeinu.jp/bakeping.php<br />
http://www.a2b.cc/setloc/bp.a2b<br />
http://www.bitacoles.net/ping.php<br />
http://www.blogdigger.com/RPC2<br />
http://www.blogoole.com/ping/<br />
http://www.blogoon.net/ping/<br />
http://www.blogpeople.net/servlet/weblogUpdates<br />
http://www.blogroots.com/tb_populi.blog?id=1<br />
http://www.blogshares.com/rpc.php<br />
http://www.blogsnow.com/ping<br />
http://www.blogstreet.com/xrbin/xmlrpc.cgi<br />
http://www.mod-pubsub.org/kn_apps/blogchatter/ping.php<br />
http://www.newsisfree.com/RPCCloud<br />
http://www.newsisfree.com/xmlrpctest.php<br />
http://www.popdex.com/addsite.php<br />
http://www.snipsnap.org/RPC2<br />
http://www.weblogues.com/RPC/<br />
http://xmlrpc.blogg.de<br />
http://xping.pubsub.com/ping/<br />
http://api.moreover.com/ping<br />
http://api.my.yahoo.com/rss/ping<br />
http://blogsearch.google.com/ping/RPC2<br />
http://ping.bitacoras.com<br />
http://ping.feedburner.com<br />
http://ping.syndic8.com/xmlrpc.php<br />
http://rpc.blogrolling.com/pinger/<br />
http://rpc.icerocket.com:10080/<br />
http://rpc.technorati.com/rpc/ping<br />
http://rpc.weblogs.com/RPC2<br />
http://topicexchange.com/RPC2<br />
http://www.blogdigger.com/RPC2<br />
http://www.blogoole.com/ping/<br />
http://www.popdex.com/addsite.php<br />
http://www.wasalive.com/ping/<br />
http://www.weblogues.com/RPC/<br />
http://blogping.unidatum.com/RPC2/</p></blockquote>
<p>Konu hakkındaki yorumlarınızı veya konuya eklemek istediğiniz detaylar için yorum formunu kullanmaktan çekinmeyin.</p>
<p>iyi çalışmalar..</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.smyrna.com.tr/seo/wordpres-seo.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>jQuery ile Animasyon Yapmak</title>
		<link>http://blog.smyrna.com.tr/programlama/jquery-ile-animasyon-yapmak.html</link>
		<comments>http://blog.smyrna.com.tr/programlama/jquery-ile-animasyon-yapmak.html#comments</comments>
		<pubDate>Thu, 18 Dec 2008 13:38:43 +0000</pubDate>
		<dc:creator>Mehmet Tahta</dc:creator>
		
		<category><![CDATA[Programlama]]></category>

		<category><![CDATA[css]]></category>

		<category><![CDATA[javascript]]></category>

		<category><![CDATA[jquery]]></category>

		<category><![CDATA[js]]></category>

		<category><![CDATA[makale]]></category>

		<guid isPermaLink="false">http://blog.smyrna.com.tr/?p=51</guid>
		<description><![CDATA[
Yazar: Jeffrey Jordan Way , Çeviri: Mehmet Tahta

Bu konu jQuery kütüphanesinin animasyon özelliği üzerine yoğunlaşmış bir şekilde olacak. İlk başta basit Göster/Gizle metodu üzerinde yoğunlaşacağız, daha sonra da özel animasyon metodlarına geçeceğiz.
Show ve Hide Metodları ne iş yapar?
Belgeniz içerisinde öğeye “Hide()” metodunu uygulamak “none” olarak görüntülenmeye sebep olur. Aşağıdaki CSS ve jQuery parçaları özdeş fonksiyonlardır.


#someElement
{
display: [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://www.hitman.gen.tr/wp-content/uploads/2008/10/jquery.jpg" alt="" width="246" height="174" /></p>
<p>Yazar: <span id="ctl00_ContentPlaceHolder1_ListView5_ctrl0_BlogAuthorLabel" class="blogPageAuthor"><a title="Jeffrey Jordan Way" href="http://www.detacheddesigns.com/" target="_blank">Jeffrey Jordan Way</a> , Çeviri: <a title="mehmet tahta, hitman" href="http://www.hitman.gen.tr/" target="_blank">Mehmet Tahta</a><br />
</span></p>
<p>Bu konu jQuery kütüphanesinin animasyon özelliği üzerine yoğunlaşmış bir şekilde olacak. İlk başta basit Göster/Gizle metodu üzerinde yoğunlaşacağız, daha sonra da özel animasyon metodlarına geçeceğiz.</p>
<h2>Show ve Hide Metodları ne iş yapar?</h2>
<p>Belgeniz içerisinde öğeye “Hide()” metodunu uygulamak “none” olarak görüntülenmeye sebep olur. Aşağıdaki <a class="st_tag internal_tag" title="Posts tagged with css" rel="tag" href="http://www.hitman.gen.tr/tag/css">CSS</a> ve jQuery parçaları özdeş fonksiyonlardır.</p>
<div class="wp_syntax">
<div class="code">
<pre class="css css" style="font-family: monospace;"><span style="color: #cc00cc;">#someElement</span>
<span style="color: #00aa00;">{</span>
<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00aa00;">:</span> <span style="color: #993333;">none</span>;
<span style="color: #00aa00;">}

</span>$<span style="color: #009900;">(</span>“#someElement”<span style="color: #009900;">)</span>.<span style="color: #660066;">hide</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>;</pre>
</div>
</div>
<p>Bu örneği sizin şekillendirebileceğinizden eminim. “Show()” metodu tekrar orijinal görünüme çevirmeye yarar.</p>
<div class="wp_syntax">
<div class="code">
<pre class="css css" style="font-family: monospace;"><span style="color: #cc00cc;">#someElement</span>
<span style="color: #00aa00;">{</span>
<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00aa00;">:</span> <span style="color: #993333;">inline</span>;
<span style="color: #00aa00;">}

</span>$<span style="color: #009900;">(</span>“#someElement”<span style="color: #009900;">)</span>.<span style="color: #660066;">show</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>;</pre>
</div>
</div>
<h2>Show ve Hide metodları öğeleri canlandırır mı?</h2>
<p>Evet veya hayır. <strong>Herhangi bir parametre olmadan animasyon olmaz</strong>. Fakat, eğer “Show” metodunu uyguladığımızda öğelerin yavaşca görünür olmasını istiyorsak? Bu durumda bunlar için “slow” kelimesini metodumuz içerisine eklemeliyiz. Örneğin..</p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>“#someElement”<span style="color: #009900;">)</span>.<span style="color: #660066;">show</span><span style="color: #009900;">(</span>“slow”<span style="color: #009900;">)</span>;</pre>
<p>Bu kod çalıştığında öğe 6 sn içerisinde yavaşça görünür duruma geçecek. Hız parametresi için keyword veya spesifik uzunluk verebiliriz. Bunlar için “slow”, “normal” ve “fast” parametreleri kullanılabilir. (Bu ifadeler sırasıyla 6, 4 ve 3 saniyeyi ifade eder). Alternatif olarak, rakamları kullanarak hızı belirtebiliriz. Aşağıdaki örnekte olduğu gibi:</p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>“#someElement”<span style="color: #009900;">)</span>.<span style="color: #660066;">show</span><span style="color: #009900;">(</span><span style="color: #cc0000;">1000</span><span style="color: #009900;">)</span>;</pre>
<p>Bu kod elementin bir saniyede görünür olmasını sağlar, veya 1000 milisaniyede. Şunu unutmayalım, keyword kullandığımızda tırnak işareti  kullanıyoruz. Ancak, spesifik olarak rakamlarla ifade ettiğimizde tırnak işaretini kullanmıyoruz.</p>
<p>“Show()” metoduyla alakalı harikulade bir şey ise aslında bütünüyle dijital kalıp kullanıyor olmamız. Bu metodla saydamlığı değiştirebiliyoruz, aynı zamanda yükseklik ve genişlik değerlerini de. Bir diğer animasyon metoduysa jQuery kütüphanesiyle, diğer taraftan, sadece spesifik özellik belirtmeyle yapılabiliyor.</p>
<h2>FadeIn() ve FadeOut()</h2>
<p>Fade metodu öğenin sadece saydamlığını değiştirmekle olur. FadeOut() öğenin saydamlığının spesifik periyotlarla azaltılmasıyla, onun tamamen görünmez olması süresince olur (display: none). FadeIn() ise bunun tamamen tersini yapar. Show ve Hide metodlarında olduğu gibi “slow”, “normal” ve “fast” olarak nitelendirebilme imkanımız vardır. <a href="http://www.detacheddesigns.com/blog/samples/jQueryAnimationExamples/fadeOut.htm" target="_blank">Şu örneği</a> inceleyin, ardından kaynağı tekrar gözden geçirin.</p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>document<span style="color: #009900;">)</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
 <span style="color: #009900;">{</span>
  $<span style="color: #009900;">(</span><span style="color: #3366cc;">"#someId"</span><span style="color: #009900;">)</span>.<span style="color: #660066;">click</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
 <span style="color: #009900;">{</span>
 $<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">fadeOut</span><span style="color: #009900;">(</span><span style="color: #3366cc;">"slow"</span><span style="color: #009900;">)</span>;

 <span style="color: #009900;">}</span><span style="color: #009900;">)</span>;
<span style="color: #009900;">}</span><span style="color: #009900;">)</span>;</pre>
<p>İşte burada belgenin hazır konuma geldikten sonra neler yapacağı belirtilmiş. “someId” anchor tagına tıklandığı zaman yavaşça gözden kaybolacak..</p>
<h2>slideUp() ve slideDown()</h2>
<p>Slide(Kayma) metodları öğenin yüksekliğinin değiştirilmesiyle olur. “slideDown” metodunu kullandığımızda, öğe görünür hale gelecek ve yukardan aşağı doğru belirtilmiş boyuta gelene kadar kayacak. Her zamanki gibi bu parametrede rakamlar veya keyword kullanabiliriz. Diğer örneklerde belirtildiği gibi.</p>
<h2>Özel Animasyonlar</h2>
<p>Birçok durumda animasyonarınız üzerinde daha büyük bir kontrol sağlamaya ihtiyaç duyarsınız. Bu tip durumlarda çekirdek animasyon sizin ihtiyaçlarınızı karşılamaz. Şimdi biraz daha ileri düzey özel animasyonlar yapmaya değinelim.</p>
<h2>Öğeyi sayfa boyunca karşıdan karşıya sürüklemek</h2>
<p>Bu basit örnekte öğenin üzerine tıklandığında sayfanın bir ucundan diğerine geçiş yapmasını sağlayacağız. <a title="örneği incelemek için tıklayın" href="http://www.detacheddesigns.com/blog/samples/jQueryAnimationExamples/shiftAnImage.htm" target="_blank">Örneği inceleyin</a>. Boş bir html sayfamızın olduğunu ve “theImage” olarak taglanmış bir imaj olduğunu farzedelim. Öncelikle <a class="st_tag internal_tag" title="Posts tagged with css" rel="tag" href="http://www.hitman.gen.tr/tag/css">CSS</a> dosyamızı ayarlamalıyız.</p>
<div class="wp_syntax">
<div class="code">
<pre class="css css" style="font-family: monospace;"><span style="color: #cc00cc;">#theImage</span>
<span style="color: #00aa00;">{</span>
<span style="color: #000000; font-weight: bold;">position</span><span style="color: #00aa00;">:</span> <span style="color: #993333;">relative</span>;
<span style="color: #00aa00;">}

</span></pre>
</div>
</div>
<p>İmajı hareket ettirmek için “left” özelliğini değiştireceğiz. Ancak öğe mutlaka “top”, “left”, “bottom” ve “right” olarak pozisyonlandırılmalıdır. Şimdi jQuery ekleyelim.</p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>document<span style="color: #009900;">)</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span><span style="color: #009900;">{</span>
 $<span style="color: #009900;">(</span><span style="color: #3366cc;">"#theImage"</span><span style="color: #009900;">)</span>.<span style="color: #660066;">click</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
  <span style="color: #009900;">{</span>
   $<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">animate</span>
    <span style="color: #009900;">(</span><span style="color: #009900;">{</span>left<span style="color: #339933;">:</span> <span style="color: #3366cc;">"400px"</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> <span style="color: #cc0000;">3000</span><span style="color: #009900;">)</span>;
   <span style="color: #009900;">}</span><span style="color: #009900;">)</span>;

  <span style="color: #009900;">}</span><span style="color: #009900;">)</span>;</pre>
<p>İşte burada click event (tıklandığında yapılacak olayı) oluşturuyoruz imajımız için. Ardından da “animate” metodunu kullanıyoruz.</p>
<p><em>Animasyon metodu için doğru söz dizimi: <em>.animate({property: “value”}, speed, callbackFunction);. </em></em></p>
<p>İmajı sağa doğru 3 saniye(veya 3000 milisaniye) içerisinde 400piksel gidecek şekilde ayarladık.</p>
<h2>Çoklu Animasyon</h2>
<p>Son örneğimiz üzerine biraz çalışma yapalım. Şimdi imajımızın sağa doğru kaymasını ve yüksekliği kadar artmasını istiyoruz. Aşağıdaki örnekteki gibi mi yapmalıyız?</p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>“#theImage”<span style="color: #009900;">)</span>.<span style="color: #660066;">click</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
<span style="color: #009900;">{</span>
$<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">animate</span>
<span style="color: #009900;">(</span><span style="color: #009900;">{</span>
left<span style="color: #339933;">:</span> “400px”<span style="color: #339933;">,</span>
width<span style="color: #339933;">:</span> “300px”
<span style="color: #009900;">}</span><span style="color: #339933;">,</span> <span style="color: #cc0000;">3000</span><span style="color: #009900;">)</span>;</pre>
<p>Cevap: Hayır. Eğer yapmak istediğimiz şeye tekrar göz atarsanız imajın sağa doğru kaymasını ve bu işlemin bitmesinin ardından imajın genişliğinin 300px olmasını sağladık. <strong>Bu yolla kod doğru bir şekilde yazılmamış oldu, bu kodlarla iki animasyon eş zamanlı olur. </strong>Yani imaj sağa doğru kayarken, yüksekliği de aynı anda değişir. <strong>Peki biz animasyonlarımıza nasıl “kuyruk”(sıralama) ekleyebiliriz?</strong></p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>“#theImage”<span style="color: #009900;">)</span>.<span style="color: #660066;">click</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
<span style="color: #009900;">{</span>
$<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">animate</span>
<span style="color: #009900;">(</span><span style="color: #009900;">{</span>
left<span style="color: #339933;">:</span> “400px”<span style="color: #339933;">,</span>
<span style="color: #009900;">}</span><span style="color: #339933;">,</span> <span style="color: #cc0000;">3000</span><span style="color: #009900;">)</span>;

$<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">animate</span>
<span style="color: #009900;">)</span><span style="color: #009900;">{</span>
width<span style="color: #339933;">:</span> “300px”
<span style="color: #009900;">}</span><span style="color: #339933;">,</span> <span style="color: #cc0000;">3000</span><span style="color: #009900;">)</span>;</pre>
<p>Şimdi iki animasyonu ayırmış olduk. Öğenin “width” (yükseklik) kısmı “left” işlemi(sağa doğru kayma) tamamlanmadan değişmeyecek. <strong>Bu “kuyruklu animasyon” veya “zincirleme” olarak adlandırılır.</strong></p>
<h2>Öğrendiklerimizi Birleştirelim</h2>
<p><a title="örneği incelemek için tıklayın" href="http://www.detacheddesigns.com/blog/samples/jQueryAnimationExamples/combined.htm" target="_blank">Örneği inceleyiniz.</a><br />
Bir sonraki örnekte imaja tıklandığında imajı sağa doğru kaydıracağız ve saydamlığını %10′dan %100′e getireceğiz. Animasyon tamamlandığında imajın 3 saniye içerisinde gözden kaybolmasını sağlayacağız. Öncelikle <a class="st_tag internal_tag" title="Posts tagged with css" rel="tag" href="http://www.hitman.gen.tr/tag/css">CSS</a> dosyamızı düzenleyelim.</p>
<div class="wp_syntax">
<div class="code">
<pre class="css css" style="font-family: monospace;"><span style="color: #cc00cc;">#theImage</span>
<span style="color: #00aa00;">{</span>
<span style="color: #000000; font-weight: bold;">position</span><span style="color: #00aa00;">:</span> <span style="color: #993333;">relative</span>;
<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00aa00;">:</span> <span style="color: #993333;">none</span>;
<span style="color: #00aa00;">}
</span></pre>
</div>
</div>
<p>Öğe, “left” özelliğinin belirtilmesinden sonra nispeten pozisyonlanmaya ihtiyaç duyar. Ayrıca görünümün de yavaşca kaybolmasını istiyoruz, öyleyse aşağıdaki şekilde kullanmamız gerekecek.</p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>document<span style="color: #009900;">)</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span><span style="color: #009900;">{</span>
 $<span style="color: #009900;">(</span><span style="color: #3366cc;">"#theImage"</span><span style="color: #009900;">)</span>.<span style="color: #660066;">css</span><span style="color: #009900;">(</span><span style="color: #3366cc;">"opacity"</span><span style="color: #339933;">,</span> <span style="color: #3366cc;">".1"</span><span style="color: #009900;">)</span>;
 $<span style="color: #009900;">(</span><span style="color: #3366cc;">"#theImage"</span><span style="color: #009900;">)</span>.<span style="color: #660066;">click</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
  <span style="color: #009900;">{</span>
   $<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">animate</span>
    <span style="color: #009900;">(</span><span style="color: #009900;">{</span>left<span style="color: #339933;">:</span> <span style="color: #3366cc;">"400px"</span><span style="color: #339933;">,</span> opacity<span style="color: #339933;">:</span> <span style="color: #3366cc;">"1"</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> <span style="color: #cc0000;">3000</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
     <span style="color: #009900;">{</span>
      $<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">fadeOut</span><span style="color: #009900;">(</span><span style="color: #cc0000;">3000</span><span style="color: #009900;">)</span>;
     <span style="color: #009900;">}</span>
    <span style="color: #009900;">)</span>;
 <span style="color: #009900;">}</span><span style="color: #009900;">)</span>;

 <span style="color: #009900;">}</span><span style="color: #009900;">)</span>;</pre>
<h2>.<a class="st_tag internal_tag" title="Posts tagged with css" rel="tag" href="http://www.hitman.gen.tr/tag/css">CSS</a> zincirlenemez!</h2>
<p>Eğer imaj kaydırılır ve görünür hale getirilirse (saydamlığı arttırılırsa) <a class="st_tag internal_tag" title="Posts tagged with css" rel="tag" href="http://www.hitman.gen.tr/tag/css">css</a> dosyamızı şu şekilde düzenlememiz gerekir..</p>
<pre class="css css" style="font-family: monospace;">.css<span style="color: #00aa00;">(</span>“<span style="color: #000000; font-weight: bold;">border</span>”<span style="color: #00aa00;">,</span> “<span style="color: #993333;">5px</span> <span style="color: #993333;">solid</span> <span style="color: #993333;">red</span>”<span style="color: #00aa00;">)</span>;</pre>
<p>Maalesef istediğiniz cevabı alamayacaksınız. <a class="st_tag internal_tag" title="Posts tagged with css" rel="tag" href="http://www.hitman.gen.tr/tag/css">CSS</a> dosyası diğer animasyonların bitmesini beklemeden değişecek. O zaman nasıl zincirleme yapacaksınız? Cevap: “callback” fonksiyonunu kullanarak. İşte gözden geçirilmiş kodumuz.</p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>document<span style="color: #009900;">)</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span><span style="color: #009900;">{</span>
 $<span style="color: #009900;">(</span><span style="color: #3366cc;">"#theImage"</span><span style="color: #009900;">)</span>.<span style="color: #660066;">css</span><span style="color: #009900;">(</span><span style="color: #3366cc;">"opacity"</span><span style="color: #339933;">,</span> <span style="color: #3366cc;">".1"</span><span style="color: #009900;">)</span>;
 $<span style="color: #009900;">(</span><span style="color: #3366cc;">"#theImage"</span><span style="color: #009900;">)</span>.<span style="color: #660066;">click</span><span style="color: #009900;">(</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
  <span style="color: #009900;">{</span>
   $<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">animate</span>
    <span style="color: #009900;">(</span><span style="color: #009900;">{</span>left<span style="color: #339933;">:</span> <span style="color: #3366cc;">"400px"</span><span style="color: #339933;">,</span> opacity<span style="color: #339933;">:</span> <span style="color: #3366cc;">"1"</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> <span style="color: #cc0000;">3000</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
     <span style="color: #009900;">{</span>
      $<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">css</span><span style="color: #009900;">(</span>“border”<span style="color: #339933;">,</span> “5px solid red”<span style="color: #009900;">)</span>;
      $<span style="color: #009900;">(</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">)</span>.<span style="color: #660066;">fadeOut</span><span style="color: #009900;">(</span><span style="color: #cc0000;">3000</span><span style="color: #009900;">)</span>;
     <span style="color: #009900;">}</span>
    <span style="color: #009900;">)</span>;
 <span style="color: #009900;">}</span><span style="color: #009900;">)</span>;

 <span style="color: #009900;">}</span><span style="color: #009900;">)</span>;</pre>
<p>Callback fonksiyonu, fonksiyonların efektin tamamlanmasının ardından gerçekleşmesini bildirmenizi sağlar. Bunların hepsi jQuery efekt metodlarında belirlenmiştir.</p>
<pre class="javascript javascript" style="font-family: monospace;">$<span style="color: #009900;">(</span>“#someElement”<span style="color: #009900;">)</span>.<span style="color: #660066;">slideDown</span><span style="color: #009900;">(</span>“normal”<span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span>
 <span style="color: #009900;">{</span>
  ...<span style="color: #660066;">baz</span>ı kodlar buraya

 <span style="color: #009900;">}</span><span style="color: #009900;">)</span>;
<span style="color: #009900;">)</span>;</pre>
<p>Bu kod “someElement” id’li öğenin bulunmasını sağlar. Bulduğunda, öğenin normal hızda (4 saniye) tüm yüksekliği boyunca kaymasını sağlar. Animasyon tamamlandığında ise fonksiyon harekete geçer.</p>
<p>Çeviri işi gerçekten zor bir iş. Elimden geldiğince titiz olmaya özen gösterdim, umarım anlayabileceğiniz bir anlatım olmuştur. Bundan sonra vakit buldukça bu tarz güzel makaleleri sizlerle paylaşmaya devam edeceğim. Anlatım ile ilgili sorularınız olursa yorum olarak ekleyebilirsiniz, elimden geldiğince yardımcı olmaya çalışırım.</p>
<p>Mehmet.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.smyrna.com.tr/programlama/jquery-ile-animasyon-yapmak.html/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
