Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] jQuery .load carga parcial no me funciona

Estas en el tema de jQuery .load carga parcial no me funciona en el foro de Jquery en Foros del Web. La idea es recargar solo ciertas partes al pulsar un enlace en lugar de cargar la nueva página entera Por alguna razón que desconozco no ...
  #1 (permalink)  
Antiguo 13/04/2013, 02:55
 
Fecha de Ingreso: enero-2008
Mensajes: 580
Antigüedad: 16 años, 3 meses
Puntos: 9
jQuery .load carga parcial no me funciona

La idea es recargar solo ciertas partes al pulsar un enlace en lugar de cargar la nueva página entera

Por alguna razón que desconozco no me sale
Error
Cita:
$('article').load($(this).attr('href') article);
Ok
Cita:
$('article').load($(this).attr('href'));
EJ jQuery
Cita:
$('#result').load('ajax/test.html #container');
Gracias

Cita:
<script src="js/jquery.js"></script>
<script>
$(document).ready(function() {
$("body").css({"background-color":"yellow","font-size":"100%"});

//$('nav').load('nav.html');
$('nav').load('nav.html #E1');
$('a').click(function() {
$('article').load($(this).attr('href') article);
$('aside').load($(this).attr('href') aside);
});
});
</script>
  #2 (permalink)  
Antiguo 13/04/2013, 06:41
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: jQuery .load carga parcial no me funciona

La forma correcta sería esta

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. <html lang="es-ar">
  3. <meta charset="utf-8" />
  4. <title>Html5</title>
  5. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  6. <script type="text/javascript">
  7. //<![CDATA[
  8. $(document).ready(function(){
  9. $('a').click(function(event) {
  10. event.preventDefault(); // evitar la acción del link al href
  11. var url = $(this).attr('href');
  12. $('article').load(url + ' article');
  13. });
  14. });
  15. //]]>
  16. </head>
  17. <a href="load2.html">cargar</a>
  18. </body>
  19. </html>

load2.html

Código:
<article>
	cargado con load
</article>
<p>
	aaaaaa
</p>
cuando presentes estos ejemplo es importante que postees también tu html
SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 13/04/2013, 07:12
 
Fecha de Ingreso: enero-2008
Mensajes: 580
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: jQuery .load carga parcial no me funciona

Muchas Gracias, por cierto y lo siguiente que utilidad tiene

Cita:
//<![CDATA[
Cita:
//]]>
  #4 (permalink)  
Antiguo 13/04/2013, 09:22
 
Fecha de Ingreso: enero-2008
Mensajes: 580
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: jQuery .load carga parcial no me funciona

una ultima cosa, con la Función preventDefault() creo que se anulan totalmente los enlaces, algo he leído sobre apoyar con HASH para habilitar las fechas de navegación del navegador Anterior y Siguiente, no se por donde seguir buscando

Gracias

Cita:
event.preventDefault(); // evitar la acción del link al href
  #5 (permalink)  
Antiguo 13/04/2013, 11:25
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: jQuery .load carga parcial no me funciona

Cita:
Iniciado por quico5 Ver Mensaje
una ultima cosa, con la Función preventDefault() creo que se anulan totalmente los enlaces, algo he leído sobre apoyar con HASH para habilitar las fechas de navegación del navegador Anterior y Siguiente, no se por donde seguir buscando

Gracias
el bloque CDATA se usa para que cuando validás el parser xml no analice el javascript.
no sería relevante en el caso de html5, pero como en las plantillas de mi editor de texto los tengo incorporados, los pongo.
si, con preventDfault conseguis eso, si tuvieses otros links en la página, ponele una clase a los que uses para hacer load. o sencillamente, no uses a, usá otra etiqueta y otro atributo para recuperar la url.
Para navegar con ajax y mantener el historial, utilizá pushState, o buscá documentación sobre history.js
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #6 (permalink)  
Antiguo 13/04/2013, 16:34
 
Fecha de Ingreso: enero-2008
Mensajes: 580
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: jQuery .load carga parcial no me funciona

¿porque me sale con un enlace solo y no me sale con un enlace en un nav>ul>li>a?
quizás sea por
Cita:
$('nav').load('nav.html #E1');
la idea es usar esta estructura nav>ul>li>a, quizás como mucho, nav>ul>li>ul>li>a

parece que lo del historial tendré que estudiarlo con calma

gracias

http://anhida.es/responsive/
  #7 (permalink)  
Antiguo 13/04/2013, 16:45
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: jQuery .load carga parcial no me funciona

desarrolla más tu html, porque asi no se entiende para nada, si veo los posts anteriores estás cargando con load dentro de un nav haciendo click en un a que está dentro de ese nav
SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #8 (permalink)  
Antiguo 13/04/2013, 17:07
 
Fecha de Ingreso: enero-2008
Mensajes: 580
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: jQuery .load carga parcial no me funciona

he descartado cargar nav.html en el TAG NAV para simplificar, me da la sensación de que jQuery no se aplica a las partes cargadas con load, ¿es correcto?

¿mejor así?
Cita:
<!DOCTYPE HTML>
<html lang="es">
<head>
<meta charset="utf-8">
<title></title>
<!-- html5 -->
<script src="js/jquery.js"></script>
<script>
//<![CDATA[
$(document).ready(function(){
$('nav a').click(function(event) {
event.preventDefault(); // evitar la acción del link al href
var url = $(this).attr('href');
$('article').load(url + ' article');
$('aside').load(url + ' aside');
});
});
//]]>
</script>
<!-- navSelect -->
<link rel="stylesheet" type="text/css" href="style/style.css">
</head>
<body>
<header><h1></h1></header>
<nav><ul>
<li><a href="index.html">Pagina_1</a></li>
<li><a href="dos.html">Pagina_2</a></li>
</ul>
</nav>
<article>Cero</article>
<aside>Uno</aside>
</body>
</html>
Cita:
<!DOCTYPE HTML>
<html lang="es">
<head>
<meta charset="utf-8">
<title></title>
<!-- html5 -->
<script src="js/jquery.js"></script>
<script>
//<![CDATA[
$(document).ready(function(){
$('nav a').click(function(event) {
event.preventDefault(); // evitar la acción del link al href
var url = $(this).attr('href');
$('article').load(url + ' article');
$('aside').load(url + ' aside');
});
});
//]]>
</script>
<!-- navSelect -->
<link rel="stylesheet" type="text/css" href="style/style.css">
</head>
<body>
<header><h1></h1></header>
<nav><ul>
<li><a href="index.html">Pagina_1</a></li>
<li><a href="dos.html">Pagina_2</a></li>
</ul>
</nav>
<article>dos</article>
<aside>tres</aside>
</body>
</html>
  #9 (permalink)  
Antiguo 13/04/2013, 17:33
 
Fecha de Ingreso: enero-2008
Mensajes: 580
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: jQuery .load carga parcial no me funciona

Creo que lo voy pillando, gracias ;)

http://anhida.es/responsive

Solo me queda la duda del anterior Post, ¿por ejemplo una galería jQuery se puede llamar por load o en su caso no podría aplicarse el jQuery? en los mensajes anteriores cargaba el menu por load y no se le aplicaba el jQuery

Cita:
<!DOCTYPE HTML>
<html lang="es">
<head>
<meta charset="utf-8">
<title></title>
<!-- html5 -->
<script src="js/jquery.js"></script>
<script>
//<![CDATA[
$(document).ready(function(){
$('nav a').click(function(event) {
event.preventDefault(); // evitar la acción del link al href
var url = $(this).attr('href');
$('article').load(url + ' article');
$('aside').load(url + ' aside');
});

$('#previous').click(function(){
window.history.back();
});
$('#forward').click(function(){
window.history.forward();
});

function loadView(view){
$('nav').load('views/'+view+'.html');
}
function printHistoryLength(){
$('span').text(window.history.length);
}

$('nav').on('click','a',function(event){
if (typeof window.history.pushState == 'function') {
event.preventDefault();
var view = $(this).attr('href');
window.history.pushState(view, null, view);
loadView(view);
printHistoryLength();
}
});

window.history.replaceState($('strong').text(), null, $('strong').text());
printHistoryLength();

window.onpopstate = function(event){
loadView(window.history.state);
};

});
//]]>
</script>
<!-- navSelect -->
<link rel="stylesheet" type="text/css" href="style/style.css">
</head>
<body>
<header><h1></h1></header>
<nav>
<ul>
<li><a href="index.html">Pagina_1</a></li>
<li><a href="dos.html">Pagina_2</a></li>
</ul>
</nav>
<article>Cero</article>
<aside>Uno</aside>
</body>
</html>
  #10 (permalink)  
Antiguo 13/04/2013, 18:05
 
Fecha de Ingreso: enero-2008
Mensajes: 580
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: jQuery .load carga parcial no me funciona

En este ejemplo cargo el menu via PHP (HTACCESS->HTML)

Cada enlace de entrada muestra los enlaces de un color, para distingir que esta funcionando correctamente
http://anhida.es/responsive/index.html
http://anhida.es/responsive/dos.html
http://anhida.es/responsive/tres.html
  #11 (permalink)  
Antiguo 13/04/2013, 18:12
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: jQuery .load carga parcial no me funciona

Cita:
Iniciado por quico5 Ver Mensaje
En este ejemplo cargo el menu via PHP (HTACCESS->HTML)

Cada enlace de entrada muestra los enlaces de un color, para distingir que esta funcionando correctamente
http://anhida.es/responsive/index.html
http://anhida.es/responsive/dos.html
http://anhida.es/responsive/tres.html
Ahora me confundiste, cual es el problema de esas páginas?
y esto
menu via PHP (HTACCESS->HTML)
que significa exactamente?

__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #12 (permalink)  
Antiguo 13/04/2013, 18:25
 
Fecha de Ingreso: enero-2008
Mensajes: 580
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: jQuery .load carga parcial no me funciona

Discúlpame emprear, quizás me haya explicado mal, ahora ya me funciona, puse los últimos enlaces como ejemplo para poder comprobar los resultados, al moverse por los enlaces estos conservan el mismo color, pero si se abren en una pestaña nueva tienen distintos colores, comprobando así que funciona correctamente, al menos es lo que me parece, el resultado es una plantilla de trabajo, creo que practica para evitar redundancia, osea, algunas partes siempre se cargan, para agilizar las cargas he pensado que se cargue lo común la primera vez

tengo los archivos con extensión HTML, en estos archivos por defecto no funciona el lenguaje PHP
para uso ocasional he tirado del archivo .HTACCESS con el siguiente codigo
Cita:
AddType x-mapp-php5 .html .htm
para el servidor 1and1

Espero estar llevando unas practicas mas o menos correctas, de todas formas estoy abierto a sugerencias

gracias

P.D: El INCLUDE de PHP lo uso para cargar NAV.HTML

Última edición por quico5; 13/04/2013 a las 18:27 Razón: Ultima linea
  #13 (permalink)  
Antiguo 13/04/2013, 18:40
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: jQuery .load carga parcial no me funciona

ok, correcto. y es mucho más logico que cargarlo con load

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: ajax, html, javascript, js, load, parcial
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:17.