Frage Uncaught Error: Syntaxfehler, nicht erkannter Ausdruck: # / angularjs und jquery


Der folgende Fehler wird in meiner Konsole immer angezeigt, wenn meine Seite geladen wird.

"Uncaught Error: Syntaxfehler, nicht erkannter Ausdruck: # / about"

Mein Code ist wie folgt:

                <li class="active">
                    <a href="/">Home</a>
                </li>
                <li class="">
                    <a href="#/about" title="About Us">About</a>
                </li>
                <li class="">
                    <a href="#/pricing">Pricing</a>
                </li>

Es zeigt für alle anfängliche Instanz von. Anfänglich wird es für # / about angezeigt, so wie es zuerst ist. Wenn ich den Tab "Über uns" entferne, wird er für den Preisseitenlink angezeigt.

Das Problem mit dem Bootstrap-Tab tritt nicht auf. Dies ist nur eine einfache Navigation

Routing-Code in app.js:

$routeProvider.when('/', {
        templateUrl: 'partials/home.html'
    }).when('/account', {
        templateUrl: 'partials/account.html',
    }).when('/terms', {
        templateUrl: 'partials/terms.html'
    }).when('/about', {
        templateUrl: 'partials/about.html'
    }).otherwise({
        redirectTo: '/'
    });

Ich habe debug sein Problem von Bootstrap, bootstrap nav verursacht dieses Problem: "nav navbar-nav" Fixes dafür ist data-target = "#", will dafür aber richtig arbeiten


12
2017-07-19 05:36


Ursprung


Antworten:


Dies ist höchstwahrscheinlich ein Bootstrap-Problem. Versuchen Sie es mit data-targetAttribute auf Ihre Links wie folgt

<a href="#/about" data-target="#about" title="About Us">About</a>

16
2017-07-19 06:05



Ok du musst den Schrägstrich entfernen, '/'mit dem dein HTML wird,

<a href="#about" title="About Us">About</a>

Wenn du den Schrägstrich behalten willst '/"Du musst es benutzen data-target Attribut wie,

<a href="#/about" title="About Us" data-target="#about">About</a>

Mehr dazu Hier


5
2017-07-19 06:06



Dieses Problem tritt auch bei eckigen 2 Projekten auf. Ich füge einfach data-target = "#" zum Ankerlink hinzu. Es hat mein Problem gelöst.

 <a data-target="#" [routerLink]="['/link']">my link</a>. 


4
2018-04-25 18:09



Dies kann eine sehr seltene Situation sein, aber ich habe den gleichen Fehler wegen eines Legacy-Codes mit Colorbox und location.hash.

jQuery(function() {jQuery('.content-row .csc-default a').tooltip({placement:'top'});
jQuery('a.gallery').colorbox({
    maxWidth:'95%',
    maxHeight:'95%',
    slideshow:true,
    current:' {current} / {total}',
    opacity:'0.80',
    transition:'none',
    speed:'550',
    slideshowSpeed:'5500',
    overlayClose:true,
    fixed:false,
    escKey:true,
    arrowKey:true,
    loop:true,
    title: function() { return $(this).data('original-title')},
    close:'<span class="glyphicon glyphicon-remove"></span>',
    previous:'<span class="glyphicon glyphicon-chevron-left"></span>',
    next:'<span class="glyphicon glyphicon-chevron-right"></span>',
    slideshowStart:'<span class="glyphicon glyphicon-play"></span>',
    slideshowStop:'<span class="glyphicon glyphicon-pause"></span>',
    rel: function() { return $(this).data('rel')}
});
if (location.hash) $(location.hash).collapse('show'); //when this line is commented, Angular Route works properly
});

Seltsame Sache ist, dass der Fehler nur beim Laden der Seite mit dem Link zum Anzeigen auftrat localhost/index.html#/main oder einfach die Seite mit einer ausgewählten Ansicht neu laden.


1
2017-09-08 20:30