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

  • DJPixcell

    DJPixcell

    20 NİSAN 2007
  • Dom Esposito

    Dom Esposito

    26 Mayıs 2011
  • ŠĩŗĜŕôŵåɭȍҭҭ

    ŠĩŗĜŕô

    29 Kasım 2009