Domanda

ho un collegamento con un gestore di clic qui.l'href è pieno di informazioni di cui ho bisogno.ma non voglio che il clic apra questo collegamento.quindi ho fatto event.preventDefault e funziona bene.Ma devo target="_top" se qualcuno fa clic sul collegamento.è possibile?

È stato utile?

Soluzione 2

cambiato il event.preventDefault(); funzione a return false; e ho fatto un'animazione html con scrollTop: $('html, body').animate({scrollTop:0});

ora il collegamento non segue l'href ma scorre verso l'alto

Altri suggerimenti

Se stai impedendo l'azione predefinita del link, lo prendo che stai facendo qualcos'altro. Se questo qualcos'altro prevede la modifica della posizione della finestra e si desidera modificare la posizione della finestra in alto, puoi usare window.top per fare riferimento ad esso e quindi impostare la sua posizione tramite il location Proprietà, ad esempio:

window.top.location = /* ... */;

Per esempio (Esempio dal vivo):

Html:

<a id="theLink" href="http://jsbin.com">This link</a>
says jsbin.com and doesn't have <code>target="_top"</code>,
but will actually go to stackoverflow.com and do it
in the top window. (Seems a bit evil.)

JavaScript:

jQuery(function($) {

  $("#theLink").click(function(event) {
      window.top.location = "http://stackoverflow.com";
      return false;
  });

});

... Ma questo solleva la questione del perché non lasciare che il link faccia il suo lavoro. :-)

O se stai cercando di aggiungere target="_top" a un link che non ce l'ha quando viene cliccato, puoi fare:

var link = /* ...get the link element, e.g., $("#theLink") or whatever */;
$("#theLink").click(function() {
    link.attr("target", "_top");
});

Nota che sono non impedire l'azione predefinita lì.

Non vorrei garantire che funzionerebbe necessariamente, meglio impostare l'attributo prima di fare clic sul collegamento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top