Осторожно с $('#dialog li[class^="C"]')
!Он будет соответствовать только элементам, чей атрибут класса начинается с «C», а не с класса, начинающегося с C. Например, он не будет совпадать с <li class="foo Clown">
.
AFAIK. То, что вы хотите, невозможно без использования jQuery.Вам нужно будет пройтись по классам и проверить каждый отдельно.Что-то вроде:
$('#dialog li').filter(function(){
var classes = this.className.split(/\s/);
for (var i = 0, len = classes.length; i < len; i++)
if (/^C/.test(classes[i])) return true;
return false;
}).each( ... )
Альтернативно, вы должны рассмотреть возможность изменения вашего подхода и дать всем элементам дополнительный класс и фильтр по нему.Это имеет то преимущество, что его также можно использовать в CSS:
<li class="Clown Clown-Funny">
<li class="Clown Clown-Sad">
<li class="Clown Clown-Rodeo">