编写一个函数来处理单个元素

时间:2015-08-20 19:55:18

标签: javascript

我有这个功能。

function getInfo(){    
    [].forEach.call(document.querySelectorAll('.inStock'), function(img){
      var newImg = document.createElement('img');
      newImg.src = img.src;
      ..........
    });
} 

不是使用[]forEach或让函数对整个类.inStock起作用,如何编写此函数以使用其ID来处理单个元素?

所以基本上我希望function(img){能够正常工作,但要[].forEach.call(document.querySelectorAll('.inStock')替换document.getElementById('singleElemID')。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

你必须从调用指令中提取内部函数;通过这种方式,您不仅可以通过呼叫指令呼叫它,还可以在独立的呼叫指令中呼叫它。方式:

function createImage(img) {
    var newImg = document.createElement('img');
    newImg.src = img.src;
    // ..........
}

function getInfo() {
    [].forEach.call(document.querySelectorAll('.inStock'), createImage);
}

// Stand-alone:
createImage(document.getElementById('singleElemID');

答案 1 :(得分:1)

function getInfo(){
  var img = document.getElementById('whatever');
  var newImg = document.createElement('img');
  newImg.src = img.src;
  //...
}