Я согласился с предложением Ариэля Поповского использовать фильтр, хотя, если бы мне это было нужно во многих местах, я бы использовал предложение petersendidit о создании селектора клиента.
(Важное) отличие состоит в том, что свойство .specified должно быть проверено. IE всегда возвращает более 80 атрибутов.
Примечание: даже это не 100%. Есть некоторые атрибуты, такие как INPUT .value, которые являются особыми случаями, но, поскольку я использую DIV, я могу их игнорировать.
$("div").filter(function()
{
for (var i = 0; i < this.attributes.length; i++)
{
var attr = this.attributes[i];
if (attr.specified)
{
return true;
}
}
return false;
})