[HTML/JQUERY] Dynamischer Content durch hashchanges

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Ah tut mir leid, fehler gefunden. Hab etwas im Tutorial vergessen :S

    Ganz am Ende, nachdem das hashchange Event wieder geschlossen wurde, müssen wir es selbst einmal aufrufen. Denn sonst wird es mein ersten besuch der Seite nicht aufgerufen, und damit entsteht der Fehler wie er bei dir kam.

    Also:

    JavaScript-Quellcode

    1. $(window).hashchange( function(){
    2. //dein inhalt
    3. });
    4. $(window).hashchange();

    Ich editiere es sofort in den 1. Post.

    Und als kleiner Tipp, du kannst ja auch mit / im hash arbeiten, so wie es z.b bei Twitter und co. ist.
    Wenn du

    JavaScript-Quellcode

    1. var hash = (location.hash).replace('#page/', '');
    durch

    JavaScript-Quellcode

    1. var hash = (location.hash).replace('#!/', '');
    ersetzt, und dann

    JavaScript-Quellcode

    1. location.hash = '#page/home';
    durch

    JavaScript-Quellcode

    1. location.hash = '#!/home';

    Dann kannst du die Seiten per
    http://secure-trading.org/hp/#!/home, http://secure-trading.org/hp/#!/blabla usw aufrufen. Somit fällt das mit den hashes nicht ganz so auf *g*
  • Danke für das Tutorial, ich habe es mal ein wenig befolgt jedoch sind mir zwei Fragen offen:
    Wenn ich nun z.B. einen Link einfüge mit PHP z.B.:[*]

    PHP-Quellcode

    1. echo '<a> hreft="#login">Login</a>';

    soll er ja auf der Seite ohne diese neu zu laden die Loginseite aufrufen, doch was macht er dann?
    Sucht er dann die Seite login.php oder sucht er die CSS-Deklaration um diese dann anzuzeigen?
    Ich bräuchte evtl. ein Beispiel andem ich mich orientieren könnte ... (sprich PHP und diese .js)

    So ganz hat's noch nicht klick gemacht bei mir ... sorry für die dämliche Frage. ;)
  • NurPech schrieb:

    Ich bin ja ein Fan davon bevor man so etwas mit Frameworks erledigt ersteinmal weiß was man da tut. Und das sehe ich hier leider nicht gegeben. Ich fände es schön wenn man im Anchluss hieran noch ein kleines Tutorial macht in dem es um javascript allgmein bzw Ajax geht.

    Ansonsten finde ich es schön gemacht ;)

    Also ich mach das Ganze ja lieber so:

    HTML-Quellcode

    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    5. <link href="style/style.css" rel="stylesheet" type="text/css">
    6. <title>Dragonas's Demoseite</title>
    7. <script type="text/javascript">
    8. var xmlHttpObject = false;
    9. if (typeof XMLHttpRequest != 'undefined') {
    10. xmlHttpObject = new XMLHttpRequest();
    11. }
    12. if (!xmlHttpObject) {
    13. try {
    14. xmlHttpObject = new ActiveXObject("Msxml2.XMLHTTP");
    15. } catch (e) {
    16. try {
    17. xmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP");
    18. } catch (e) {
    19. xmlHttpObject = null;
    20. }
    21. }
    22. }
    23. function loadContent(hash) {
    24. if (arguments.length < 1) hash = "start";
    25. hash = hash.toLowerCase();
    26. xmlHttpObject.open('get', 'pages/' + hash + '.php');
    27. xmlHttpObject.onreadystatechange = handleContent;
    28. xmlHttpObject.send(null);
    29. return false;
    30. }
    31. function handleContent() {
    32. if (xmlHttpObject.readyState == 4) {
    33. document.getElementById('main').innerHTML = xmlHttpObject.responseText;
    34. document.getElementById('main').fadeOut();
    35. }
    36. }
    37. </script>
    38. </head>
    39. <body onload="loadContent()">
    40. <header id='menubar'>
    41. <a href='#' onclick="loadContent('start');">Home</a>
    42. <a href='#' onclick="loadContent('gm');">Gamemodes</a>
    43. <a href='#' onclick="loadContent('ul');">Upload</a>
    44. <a href='#' onclick="loadContent('ticket');">Missbrauch melden</a>
    45. <a href='#' onclick="loadContent('impressum');">Impressum</a>
    46. </header>
    47. <section id="main">
    48. </section>
    49. </body>
    50. </html>
    Alles anzeigen


    Demo (geht nur solange mein Rechner an ist):
    gessinger.dynalias.com:8088/test/ajax_dragonas/
    [tabmenu]
    [tab='Werbung in eigener Sache']
    Du suchst einen Instant Messenger dessen Verbindung voll verschlüsselt ist? Weiterhin soll er mit anderen Instant Massenging Protokollen verknüpfbar sein? Außerdem möchtest du weltweit erreichbar sein (ähnlich icq und msn)? - Dann schick mir Post und erhalte ein unverbindliches, auf alle Fälle kostenloses, Angebot:
    [Blockierte Grafik: http://easy-scripting.net/icon/vCollection/pmEmptyS.png]
    [tab='Vorstellung']
    NurPech
    [tab='meine Tutorials']
    [subtab='C#']

    [subtab='PHP']

    [/tabmenu]

    Meinungen, die ich geäußert habe, sind nicht notwendigerweise meine eigenen. Abweichungen von der deutschen Rechtschreibung unterliegen dem Urheberrecht, dürfen aber unter den Bedingungen von [Blockierte Grafik: http://i.creativecommons.org/l/by-nc-nd/3.0/80x15.png] verwendet werden