2017-05-01 4 views
0

Ich habe Tonnen von anderen Fragen zu dieser Fehlermeldung gesehen, aber von dem, was ich sagen kann, sind sie alle für falsch maskierte Anführungszeichen in Selektoren. In meinem Fall verwende ich (absichtlich, zumindest) überhaupt keine Selektoren. Wenn ich meine Seite www.example.com/sp öffne ich bekomme keine Fehler, aber wenn ich www.example.com/sp#/x=y öffne ich diesen Fehler, wenn ich $('.accordion').accordion(); aufrufen. HierjQuery Accordion: Uncaught Error: Syntaxfehler, unerkannter Ausdruck: [href = #/x = y]

ist die Linie in jquery.accordion mich stört: var d = (location.hash) ? c.find('a[href=' + location.hash + ']')[0] : c.find('li.current a')[0];

Es scheint, dass jQuery Akkordeon wird vorausgesetzt, es location.hash als Selektor interpretieren kann, aber ich benutze es für verschiedene Dinge.

Gibt es eine Möglichkeit, dieses Verhalten zu deaktivieren?

Antwort

1

Sie verketten es falsch und werden nicht als gültiger Wert behandelt.

Try this:

c.find('a[href="' + location.hash + '"]') 
+0

Ich glaube, Sie die Frage falsch verstanden. Der Code ist in jquery Akkordeon, es ist nicht meins. – skb

+0

@skb gut, wenn Sie daran denken, ist es auch hilfreich. Sie können es ändern, nur um Ihr Problem zu lösen. – Roljhon

+0

Sie meinen, den Quellcode für jQuery.accordion zu ändern? – skb

Verwandte Themen