代码之家  ›  专栏  ›  技术社区  ›  Horai Nuri

如何处理addEventListener和attachEvent冲突?

  •  1
  • Horai Nuri  · 技术社区  · 7 年前

    <input id="imageLoader" type="file" name="imageLoader">
    

    Javascript:

      var imageLoader = document.getElementById('imageLoader');
    
      /* console shows : ..change { 
        target: <input#imageLoader>, 
        isTrusted: true, 
        currentTarget: <input#imageLoader>, 
        eventPhas... } 
      */
      imageLoader.addEventListener('change', handleImage, false);
    
      /* console shows : undefined */
      imageLoader.onchange = function(){
        handleImage();
      };
    
      function handleImage(e){
        console.log(e);
      }
    

    如何显示与 addeventlistener 使用另一种方法?

    1 回复  |  直到 7 年前
        1
  •  2
  •   cнŝdk    7 年前

    事实上 addEventListener 接受回调函数,您可以在其中调用任何需要的代码。

    handleImage 函数直接作为回调函数。您可以创建一个回调函数来调用 作用

    imageLoader.addEventListener('change', function(e){
         //do whatever you want here
         handleImage()
    }, false);
    

    用于将事件附加到 onchange 您可以使用相同的方法:

    imageLoader.onchange = function(event) { 
        //do whatever you want here
        handleImage(event); 
    };