Javascript is awesome

3 + true; // 4
1+2+“3”; // “33”
“1”+2+3; // “123”

var x = NaN;
x === NaN; // false

Placeholder Desteklemeyen Tarayıcılara Çözüm

Bir süredir Internet Explorer ile uğraşıyordum. Pek sevmesem de mecvuriyetten. Eski sürümlerde placeholder desteği yok ve buna en akılcı çözümü modernizr ile getirebiliyoruz. 

Modernizr ile place holder desteğine baktıktan sonra eğer destek yok ise placeholder olarak atadığımız değeri value olarak girmesini istiyoruz. Yazı alanı seçildiğinde temizliyoruz. Yazı kısmında değişiklik varsa placeholderımız ile aynı değil yada boş ise tekrardan placeholder değerimizi atıyoruz. Submit işleminde phaceholderın value olarak gitmemesi içinde ekleme yapıyoruz.

Kodumuz:

$(function() {
  if (window.Modernizr) {
    if (!Modernizr.input.placeholder) {
      $("[placeholder]").focus(function() {
        var input;
        input = $(this);
        if (input.val() === input.attr("placeholder")) {
          input.val("");
          return input.removeClass("placeholder");
        }
      }).blur(function() {
        var input;
        input = $(this);
        if (input.val() === "" || input.val() === input.attr("placeholder")) {
          input.addClass("placeholder");
          return input.val(input.attr("placeholder"));
        }
      }).blur();
      return $("[placeholder]").parents("form").submit(function() {
        return $(this).find("[placeholder]").each(function() {
          var input;
          input = $(this);
          if (input.val() === input.attr("placeholder")) {
            return input.val("");
          }
        });
      });
    }
  }
});