> denotes a direct child. $('body > *') gives you all the children of the body tag, so you can always invert this with :not( ) : $('*:not(body > *)') ; however, this can be rather slow.
filter( ) will also work for you and may be faster: $('body *').filter(function(){ return $(this).parent('body') });
Any of the above should provide you with a complete set of all elements that are not children of the body tag.
Note that there could potentially be a huge number of items selected here; you will want to make your selectors as high as possible for performance, and you should probably avoid the wildcards that I used for the examples above.
source share