web-dev-qa-db-fra.com

Erreur non interceptée: erreur de syntaxe, expression non reconnue: # / angularjs et jquery

Erreur suivante affichée dans ma console chaque fois que ma page se charge.

"Erreur non détectée: erreur de syntaxe, expression non reconnue: #/about"

Mon code est comme ci-dessous:

                <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>

Il montre pour toute instance initiale de. Initialement, il apparaît pour #/environ comme il est en premier, si je supprime l'onglet à propos de nous, il apparaîtra pour le lien de la page de tarification.

Ce n'est pas bootstrap, il s'agit d'une navigation simple uniquement

Code de routage dans 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: '/'
    });

J'ai débogué son problème de bootstrap, bootstrap nav causant ce problème: "nav navbar-nav" corrige cela est data-target = "#" mais veut un travail correct pour cela

14
ram

Il s'agit très probablement d'un problème de Bootstrap. Essayez d'utiliser data-targetattribuer sur vos liens comme celui-ci

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

Ok tu dois supprimer la barre oblique, '/ 'avec lequel devient votre html,

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

Si vous souhaitez conserver la barre oblique, '/ 'tu dois utiliser data-target attribut as,

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

En savoir plus ici

6
Sudhansu Choudhary

Ce problème se produit également sur angular 2. J'ajoute simplement data-target = "#" au lien d'ancrage. Il a résolu mon problème.

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

Cela peut être une situation très rare, mais j'ai la même erreur en raison d'un code hérité utilisant Colorbox et 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
});

Chose étrange, cette erreur ne se produisait que lors du chargement de la page avec un lien pour afficher comme localhost/index.html#/main ou simplement recharger la page avec n'importe quelle vue sélectionnée.

1
Vagrant326