Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

212
Views
Anular el comportamiento predeterminado de las etiquetas de anclaje usando jquery

Estoy tratando de anular el comportamiento predeterminado de una etiqueta de anclaje para poder cargar una página web en mi servidor en el div existente, en lugar de una nueva pestaña o ventana.

hasta ahora tengo:

 myContainer.click(function(){ event.preventDefault(); $('a').click(function(){ var link = $(this).attr('href'); myContainer.load(link); }); });

En Chrome, tengo que hacer clic en el enlace dos veces antes de que haga algo, en IE y FF no funciona en absoluto y actualiza la página con el nuevo enlace.

Cualquier ayuda es muy apreciada.

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

¿No debería ser solo:

 $('a').click(function(e) { e.preventDefault(); myContainer.load(this.href); });

Su código asigna un controlador de clics dentro de un controlador de clics. Entonces, el primer clic adjuntará el controlador de clics al enlace, y el segundo clic (en el enlace) ejecutará el nuevo controlador de clics.

Parece que solo necesita un controlador de clic. Si los enlaces se agregan dinámicamente, puede usar .on() (el sucesor de .live y .delegate ):

 myContainer.on('click', 'a', function(e) { e.preventDefault(); myContainer.load(this.href); }); // or $(document).on('click', 'a', function(e) { e.preventDefault(); myContainer.load(this.href); });
over 4 years ago · Santiago Trujillo Report

0

olvidaste pasar en el evento:

 myContainer.click(function(event){ event.preventDefault(); $('a').click(function(){ var link = $(this).attr('href'); myContainer.load(link); }); });

intenta reordenarlos:

 myContainer.ready(function(){ $('a').click(function(event){ event.preventDefault(); var link = $(this).attr('href'); myContainer.load(link); }); });
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!