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

  • BruBearBaby

    BruBearBaby

    25 Ocak 2011
  • graham025

    graham025

    25 NİSAN 2006
  • Shanice Caruthers

    Shanice Caru

    27 EKİM 2011