jQuery: ¿cómo puedo seleccionar solo las casillas de verificación que están visibles y marcadas?

Estoy intentando verificar si todas las casillas de verificación visibles en una serie determinada están o no marcadas y pensé en solo contar las visibles y las que están visibles y verificadas para ver si los números son iguales. El problema es que no puedo hacer que funcionen los selectores visibles ni los seleccionados.

Estas son algunas de las ideas que tuve pero que no funcionaron:

if($j("input[id^='chk_camp']:visible:checked").length == $j("input[id^='chk_camp']:visible").length)

ambos lados son 0 en este caso

if($j("input[id^='chk_camp']").filter(':visible').filter(':checked').length == $j("input[id^='chk_camp']").filter(':visible').length)

También devolvió 0 en ambos lados.

Tambien intentado

if($j("input[id^='chk_camp'][visible][checked]").length == $j("input[id^='chk_camp'][visible]").length)

y esto también devuelve 0 en ambos lados.

Como nota$j("input[id^='chk_camp']").length devuelve el valor correcto. También el navegador con el que estoy trabajando es Firefox.

¿Qué estoy haciendo mal aquí?

Respuesta: Aparentemente, lo que estoy haciendo mal es en otro lugar. Estaba haciendo estas comprobaciones antes de hacer realmente visible el div que contenía las casillas de verificación, por lo que todas las comprobaciones de visibilidad volvían a ser falsas.

Respuestas a la pregunta(3)

Su respuesta a la pregunta