2016-04-19 13 views
1

要素の配列をループし、各要素の各インスタンスを検証しようとしています。各要素でjquery.eachを呼び出す配列をループする方法は?

var elements = ["h1","h2","h3","h4","p","strong","label","span","a"]; 
function targetZWS(){ 
    for (var i = 0; i < elements.length; i++) { 
     var item = $(".page-content "+elements[i]); 
     $(item).each(function() { 
      checkElement(this); 
     }); 
    } 
} 

は、これは私がループ内の関数を作成しています警告をスローし、どのように私はこの問題を回避します:これは私がそれをやっている方法ですか?

+0

は、あなたのすべてのアイテムに対してループ 'checkElements'機能を作り、呼び出しますそれはループ内からまだ警告を引き起こしますか? – IrkenInvader

+0

JavaScriptにこのような警告はありません。リンターを使用している必要があります。その行を無視するようにリンターを構成することができます。または、コードを '$("。page-content ")に変更することでループを取り除くことができます。find(elements.join( '、'))。each(...)'あるいは、 'checkElement'を変更してインデックスを第1引数として、要素を第2引数として受け入れ、' item.each(checkElement) 'を使用します。または両方。 –

答えて

1

JQueryでは、1つのセレクタに複数のオプションを入力することができます。

function targetZWS(){ 
    $("h1,h2,h3,h4,p,strong,label,span,a").each(function() { 
      checkElement(this); 
     }); 
    } 
} 

http://api.jquery.com/multiple-selector/

0

として配列をループするために使用する.each()

$(function() { 
    var elements = ["h1","h2","h3","h4","p","strong","label","span","a"]; 
    $.each(elements, function(index, value) { 
    alert(value); 
    var sel = ".page-content" + value 
    var item = $("sel"); 
     $(item).each(function() { 
      checkElement(this); 
     }); 
    }) 
}) 

DEMO

関連する問題