Les nouveautés et Tutoriels de Votre Codeur | SEO | Création de site web | Création de logiciel

Seo Master present to you: On April 7th, Google launched a new version of Gmail for mobile for iPhone and Android-powered devices. We shared the behind-the-scenes story through this blog and decided to share more of what we've learned in a brief series of follow-up blog posts. This week I'll talk about autogrowing textareas for entering large amounts of text.

When composing a long message in a web app, regardless of whether it's on a desktop or a mobile device, you really want to see as much of your draft as possible and make use of all the available screen space.
One of my biggest gripes are fixed-size textareas that restrict me to only a couple lines of visible text when my screen is actually many times larger than the size of the textarea.

In today's blog post, I'll share a JavaScript solution for textareas that automatically grow (vertically) to the size of the content. They make composing long messages much easier and, for all those iPhone users out there, takes away the need to scroll with the dreaded magnifying glass! We're working on getting this into Gmail for mobile but here it is now as a teaser of things to come.





Measuring the height of the content

The first step is to detect when the content has changed. Some solutions on the net recommend using a timer (see our previous post to find out more about timers) to check if content has changed. However, that approach is not ideal on a mobile device, where both battery life and processor power are limited.

Instead, we will listen for key-up events from the browser. This guarantees that we only measure the textarea when the content has actually changed.

<textarea id="growingTextarea" onkeyup="grow();"></textarea>

The second step is to actually measure the height of the content. There are solutions on the net that recommend keeping a copy of the content in a div and measuring the div to get the height; however, due to memory and processor limitations on a mobile device, those solutions don't scale well when the content gets large (and it's also hard to replicate textarea line wrapping behavior exactly in a div).

Therefore we will make use of the scrollHeight and clientHeight properties. For our purposes, scrollHeight is the height of all the content while clientHeight is the height of the content that's visible in the textarea (for more precise definitions, see scrollHeight and clientHeight)
function grow() {
var textarea = document.getElementById('growingTextarea');
var newHeight = textarea.scrollHeight;
var currentHeight = textarea.clientHeight;

}
One limitation of using scrollHeight and clientHeight is that we aren't able to shrink the textarea when content is deleted. When all the content of a textarea is visible, the scrollHeight is equal to the clientHeight. Therefore we aren't able to detect that our textarea is actually larger than the minimum size required to fit all the content (please do leave a comment if you think of a solution that doesn't require re-rendering the page).

Growing the textarea

To grow the text area, we modify the height CSS property:
if (newHeight > currentHeight) {
textarea.style.height = newHeight + 5 * TEXTAREA_LINE_HEIGHT + 'px';
}
Notice how we only change the height if newHeight > currentHeight. Depending on the browser, changing the height (even if it's to the same value) will cause the page to re-render. On a mobile device, we want to try our best to minimize the number of operations.

Also, we grow the textarea by five lines every time we grow. From a UI perspective, this reduces the amount of jitter when composing a message but, from a performance perspective, this reduces the number of times we need to re-render the page.

(Quick note for developers implementing this for a browser with scrollbars: you might want to modify the CSS overflow property to preventing the scrollbar from appearing and disappearing as you grow your textarea)

The complete solution

Growing textareas are easy to implement and they make composing long messages infinitely more usable. So go out there add it to all your web apps!
<script>
// Value of the line-height CSS property for the textarea.
var TEXTAREA_LINE_HEIGHT = 13;

function grow() {
var textarea = document.getElementById('growingTextarea');
var newHeight = textarea.scrollHeight;
var currentHeight = textarea.clientHeight;

if (newHeight > currentHeight) {
textarea.style.height = newHeight + 5 * TEXTAREA_LINE_HEIGHT + 'px';
}
}
</script>
<textarea id="growingTextarea"
onkeyup="grow();">
</textarea>

Previous posts from Gmail for Mobile HTML5 Series
Using timers effectively

2013, By: Seo Master
Seo Master present to you: Agak boring juga ngomongin belajar SEO terus apalagi hari ini postingan andalanku "Halaman Pertama Google Dalam 3 Jam!" yang udah tembus top 10 google dengan kata kunci "Meraih Halaman Pertama Google" dengan tak sengaja terhapus, padahal postingan tersebut menjadi pendulang trafik dari google. Qodarullah, memang takdirnya begitu. Sempat cari-cari petunjuk di google bagaimana cara mengembalikan artikel yang terhapus, ada sih petunjuknya tapi aku telat mempraktekannya jadi postingan kesayanganku hilang ditelan blogger

Sempat down dan hampir putus asa, males nulis postingan lagi. beruntung semangat itu datang lagi, aku akan bangkin dan membuat postingan lain yang lebih menarik dan men-SEO-kannya supaya bisa masuk top 10 google lagi.


Cara Pertama
Cara ini sekaligus juga bisa me-recovery url yang terhapus, jadi kalo artikelnya sudah terindex google. apalagi sudah masuk top 10 google maka cara ini akan sangat bermanfaat. tapi syaratnya cukup berat. berikut cara mengembalikan postingan yang terhapus sekaligus mengembalikan url nya.
Image and video hosting by TinyPic
  1. Pastikan bahwa anda belum keluar dari browser anda dimana tadi anda menghapus postingan anda.
  2. Hal ini hanya berlaku jka postingan terhapus tidak lebih dari 30 menit.
  3. besarnya file tidak boleh lebih dari 3 kb.
  4. belum melakukan pengetikan apapun pada form entri posting

Cara Kedua
cara ini dapat bekerja jika url anda telah terindex google
  1. Masuk ke google kemudian pada kotak pencarian ketikan chace:URL_ANDA (ganti tulisan merah dengan alamat url anda yang telah terhapus)
  2. Setelah ditemukan silahkan copy paste isi postingan anda pada postingan baru di blog anda
  3. cara yang kedua ini tidak mengembalikan url postingan anda. jadi yang terselamatkan hanya isinya saja.
Saya hanya berhasil mengembalikan artikel yang tehapus dengan cara kedua, jadi hilang sudah url artikel andalanku dari top 10 google. bagi yang ingin melihat postingan yang hilang tersebut sekaligus mengetahui cara menebus top 10 google hanya dalam 3 jam, silahkan masuk ke sini.

2013, By: Seo Master
Seo Master present to you: Meraih halaman pertama Google ternyata gampang. Aku punya pengalaman yang luar biasa ketika sedang mencoba belajar SEO. Blogku bisa Meraih halaman pertama google (top 10 Google) hanya dalam waktu 3 Jam setelah melakukan Optimasi. Aku Cuma melakukan 3 langkah kecil yang ternyata berdampak luar biasa terhadap kemajuan rangking blog ku di google. Aku akan bagi-bagi pengalaman ini buat kamu semua, dijamin blog kamu juga bisa Meraih halaman pertama google.

Ini adalah screen shoot hasil pencarian google dengan kata kunci desa cimindi blogku http://cimindicigugur.blogspot.com berada pada urutan 8 google (klik pada gambar untuk memperbesar).


Memang Keyword yang dipakai ga umum tapi coba perhatikan jumlah pesaingya ada 2500 lebih dan aku bisa Meraih halaman pertama google hanya dalam waktu 3 jam saja!. Bagi aku yang sedang belajar SEO blog bisa terindex google saja sudah girang, apalagi bisa Meraih halaman pertama google, dalam waktu 3 jam lagi, tentu ini membanggakan, setidaknya untukku. Dan memang disarankan untuk memposting artikel yang kira-kira belum banyak yang posting. Adapun unutk keyword yang strategis perlu pengambangan dari cara ini, Cara ini merupakan modal dasar dalam upaya Meraih halaman pertama google.

Oke.. sekarang giliran memberitahu apa yang kulakukan untuk Meraih halaman pertama google.

Kamu tentu harus punya blog dulu dan posting artikel sebelum melakukan langkah sederhana ini. Kerjakanlah 3 langkah ini untuk menembus halaman pertama Google.

Inilah cara meraih posisi halaman pertama google dalam waktu 3 jam:

1. Melakukan Ping

Setelah memposting artikel aku langsung melakukan ping terhadap blogku dengan memanfaatkan tool yang disediakan oleh pingoat. Proses ping ini perlu dilakukan setiap kita selesai memposting suatu artikel. Tujuannya supaya artikel yang baru diposting tersebut segera terdeteksi google, dan membantu mempercepat masuk halaman pertama Google.

2. Submit artikel ke Digg

Artikel yang baru kubuat tersebut aku submit ke Digg tujuannya agar cepat terindex google. Kamu lihat screen shoot diatas yang dilingari warna biru, itu adalah artikel yang kumasukkan ke digg. Jadi posisi digg lebih bagus daripada posisi blog ku sendiri. Arikel yang dipasang di Digg memang lebih cepat terindex google, Coba saja masukkan artikel ke Digg lalu search di google beberapa menit kemudian. Pasti artikel yang kamu pasang di Digg sudah nongol di google. Kalo blog kamu sendiri belum masuk halaman pertama google, minimal artikelnya sudah nongol di halaman pertama google meskipun melalui Digg. Anggap aja numpang ojek..
Oh ya.. Jangan lupa pasang link di artikel kamu ke blog kamu untuk mendapatkan backlink.

3. Pasang iklan baris di berbagai iklan baris

Ini kulakukan untuk lebih menggemakan lagi arikel yang telah ku posting, supaya cepat di ketahui Google. Jadi kalo Google mendeteksi bawa link kita terdapat dimana-mana otomatis posisi kita juga akan semakin baik di google. Terkadang iklan kita akan masuk halaman pertama google dan posisinya lebih baik daripada blog kita sendiri.
Memasang Iklan baris ke puluhan iklan baris bisa dilakukan dengan simpel. Kamu cukup sekali mengisi data iklan lalu dalam sekali klik iklan kamu akan terpasang di puluhan search engine dan gratis. Klik di sini untuk melihat caranya.

Oke, Kalo kamu sudah melakukan hal itu tunggulah, Mudah mudahan blog kamu segera Meraih halaman pertama google.

Oh.. ya! Aku mohon maaf karena postingan ini kemaren sempat terhapus tanpa sengaja, jadilah artikel ini tidak bisa diakses lewat google padahal sudah ada di halaman pertama google. Beruntung Aku masih bisa mengembalikan isi artikelnya jadi tidak perlu nulis lagi. Aku berencana membuat artikel yang lebih detail tentang cara menembus top 10 google yang dengan mengikuti petunjuk yang ada diartikel tersebut bisa menjadikan blogmu masuk 10 besar google dengan keyword apapun. Mudah-mudahan bisa segera terealisir. sering-sering aja mampir kesini ya!
Caawww!
2013, By: Seo Master
Powered by Blogger.