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

  • Jimmie Jones

    Jimmie Jones

    16 Kasım 2007
  • LaKe Lightroom Tutorials

    LaKe Lightro

    22 Temmuz 2014
  • theKGB65

    theKGB65

    24 Aralık 2007