2013-08-28 67 views
0

我使用viewport selectors jQuery插件,並試圖在幾個元素執行相同的任務:拼接假&類變量

$('#something').each(function(){ 
    var current = $(this); 
    if ($(this + ':in-viewport')){ 
     console.log(current.attr('id')); 
    } 
}); 

我做得可怕的錯誤?這是我的控制檯吐出的錯誤:

Uncaught Error: Syntax error, unrecognized expression: [object HTMLDivElement]:in-viewport

回答

3

你串聯this這是一個object:in-viewport這是一個string,所以對象被轉換toString,結果是[object HTMLDivElement]:in-viewport,其中是非法的jQuery selector

我認爲你在尋找這樣的事情:

$('#something').each(function(){ 
    var current = $(this); 
    if ($(this).is(':in-viewport')) { 
     console.log(current.attr('id')); 
    } 
}); 

或者在一個更好的版本的這個具體代碼:

$('#something:in-viewport').each(function(){ 
    console.log($(this).attr('id')); 
}); 
+0

三江源,忘了。是() –