Link zu öffnen, jQuery Akkordeon
Ich versuche zu öffnen, ein Akkordeon-div über einen externen link. Ich sehe die "navigation: true" option, aber ich bin mir nicht sicher, wie es zu implementieren. Gibst du jedem div eine id und rufen Sie den link wie diesem? http://domain.com/link#anchorid
Ich bin neu in jQuery so mit mir tragen. Hier ist der code, den ich verwende, wenn es hilft.
<script type="text/javascript">
$(function(){
$("#accordion").accordion({ header: "h2", autoHeight: false, animated: false, navigation: true });
});
</script>
<div id="accordion">
<div>
<h2><a href="#">Services</a></h2>
<div class="services">
<p>More information about all of these services</p>
</div>
</div>
InformationsquelleAutor pioneer | 2009-02-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Navigations-option ist nicht für die Fenster-Aktivierung. Es ist für die den Benutzer darüber informiert, wo Sie sind.
Vereinfachte html-code:
Setzen Sie die eindeutige ID in den Link in den Titel
Dann die jQuery (vereinfacht):
"Navigation : true," wird es Ihnen ermöglichen, zu gehen http://www.site.com/#about die macht der "about" - panel ausgewählt. Für die Aktivierung, es gibt ein paar Möglichkeiten. Vielleicht ein Weg ist, schnappen Sie sich einen query-string, und legen Sie es in der jQuery.
Mit C#
Mit PHP
Denen Sie angeben, welches panel zu öffnen http://www.site.com?id=2
Kein problem. Gerne helfen
In c# müssen Sie die einzelnen Zitate: $("#accordion").accordion("activate", " <%= Request.QueryString["id"] %>);
ASP.Net Prozess was auch immer ist innerhalb des <%= %> und gibt das Ergebnis in diesem Raum. C# egal ist, was außerhalb dieser Klammern. Darüber hinaus, da Abfragezeichenfolgen sind Zeichenfolgen, es ist im Allgemeinen sicherer, um eine Zeichenfolge übergeben. Wenn Sie die Anführungszeichen weggelassen, und der querystring-war "?id=pane4", JS Aussehen würde, für eine variable oder Konstante genannt "pane4" statt jQuery herauszufinden, was mit ihm zu tun. In der Praxis können beide arbeiten, sondern setzen es in Anführungszeichen, ist der sicherere Ansatz, imho. Es ermöglicht Ihnen außerdem die Verwendung selector matching. siehe hier: docs.jquery.com/UI/Accordion/activate
In den neueren Versionen von jQuery ist es etwas wie:
("#accordion").accordion('option', 'active', 2);
InformationsquelleAutor Armstrongest
Den
navigation
option, die viele dieser Antworten beziehen sich auf war veraltet in jQuery UI 1.9 und entfernt in 1.10. Der Grund dafür war:Also Programmierer mit den neueren Versionen von jQuery-UI benötigen zum schreiben Ihrer eigenen code, um dieses feature.
Für meine Website, die ich erreicht dies mit einer JavaScript -
switch
- Anweisung nur vor der</body>
tag. (Ich bin kein erfahrener Programmierer, also andere sollten fühlen Sie sich frei, um diese zu verbessern, zu beantworten.)Hier ist der entsprechende HTML:
InformationsquelleAutor DawnPaladin
Hah, es geknackt.
Verwenden Sie die php get-Methode. Aber es ist ein Fehler in der oben.
$("#accordion").accordion("activate", ");
den php-code muss die Anführungszeichen entfernt.
Funktioniert jetzt behandeln.
Cheers
Ian
InformationsquelleAutor Ian Young
Mit einem server-side-Sprache, überprüfen Sie die Abfrage für das #Anker und verwenden Sie es zum ausfüllen des Aktivierungs-Anweisung.
Extrahiert aus etwas, was ich war, nur arbeiten:
Edit:
Ich kann nicht einen link direkt auf die Akkordeon-Methode Klappentext, aber das bekommt man in der Nähe:
http://docs.jquery.com/UI/Accordion#methods
InformationsquelleAutor Trevor Bramble
Dieser arbeitete für mich...
$("#accordion").accordion("activate", window.location.hash);
InformationsquelleAutor jasonflaherty
Dieser arbeitete für mich.
und html...
InformationsquelleAutor Aparna Dasari
dies funktioniert mit jquery 1.8.3 und jqueryui 1.9.1
aber nicht zu funktionieren scheinen, mit jqueryui 1.10.0
nicht sicher, warum...
InformationsquelleAutor dimitris