I'm trying to target page-wide links that do not start with a '#' and do not include in-line javascript but I'm having problems figuring out how to structure the selector properly.
Based on what I've googled about multiple selectors this should work, both selectors work independently, just not together!
$('a:not([href*=javascript]), a:not([href^=#])')
.each(function(){...
As indicated in jQuery - Multiple Selectors in a :not()? , this is the correct way to do this:
Don't forget to put quotes around commas if you already already have your selectors to negate in variables
I admit that the code gets a bit confusing but it has an advantage, you can do things such as this:
It's useful whenever you need to group selectors for some reason, ie. using the same group of selectors somewhere else in the code.
A live example using the same technic
Also on http://jsfiddle.net/bmL8gz5j/
:not
vs.not()
: For performance reasons, you should use:not
rather than.not()
, see Performance differences between using ":not" and ".not()" selectors?Try using
You could also try: