SORU
8 Kasım 2009, Pazar


Javascript MSIE ve parametre, event Sorunu?

document.getElementById('container').addEventListener('copy',beforecopy,false );

Chrome / Safari, yukarıdaki "beforecopy sayfadaki içeriği kopyalanmış." fonksiyonu çalışacak MSIE bu işlevi de desteği gerekiyordu, ama nedense bu hatayı alıyorum:

"Nesne bu özelliği veya yöntemi desteklemiyor"

Şimdi, Internet Explorer vücut düğüm ile çalmıyor anladığım kadarıyla, ama KİMLİĞİ bir düğüm sağlayarak iyi bir iş beklerdim. Herkes yanlış ne yapıyorum herhangi bir fikir var mı? Şimdiden teşekkürler.

** 3 "Yanlış" için iyidir. parametre ne olduğunu söyleyebilir herkes için Bonus puan

CEVAP
8 Kasım 2009, Pazar


YANİ 13 ** standart yerine attachEvent kullanmak zorunda.

Yaygın bir uygulama addEventListener yöntem mevcut olup olmadığını kontrol etmek ve kullanmak, aksi takdirde attachEvent Kullanım:

if (el.addEventListener){
  el.addEventListener('click', modifyText, false); 
} else if (el.attachEvent){
  el.attachEvent('onclick', modifyText);
}

Bir fonksiyon yapabilirsiniz

function bindEvent(el, eventName, eventHandler) {
  if (el.addEventListener){
    el.addEventListener(eventName, eventHandler, false); 
  } else if (el.attachEvent){
    el.attachEvent('on' eventName, eventHandler);
  }
}
// ...
bindEvent(document.getElementById('myElement'), 'click', function () {
  alert('element clicked');
});

Yukarıdaki kod örneği here çalıştırabilirsiniz.

addEventListener üçüncü bağımsız değişken useCapture; true ise, kullanıcı event capturing başlatmak istediğini gösterir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Juan Carlos Candela Bordera

    Juan Carlos

    4 Mart 2009
  • SDSARG3

    SDSARG3

    14 Mart 2009
  • Turkish Airlines

    Turkish Airl

    11 AĞUSTOS 2006