Quotes aren't normally allowed in the :not()
selector, since it accepts a selector, not a string. For whatever reason, though, quotes are allowed in jQuery/Sizzle's implementation of :not()
.
You should remove the \"
marks from your selector string for it to work in document.querySelectorAll()
(which Zepto appears to call directly, and use exclusively for selector matching — correct me if I'm wrong):
return $("." + vex.baseClassNames.vex + ":not(." + vex.baseClassNames.closing + ") ." + vex.baseClassNames.content);
This will result in a selector like .vex:not(.vex-closing) .vex-content
, which is a valid CSS selector.