11521 sujets

JavaScript, DOM et API Web HTML5

Bonjour
afin de supprimer les cadres html sur mon site, j'ai crée une page de test qui change le contenu d'une page sans la recharger en totalité.
en cliquant sur le lien accueil on modifie le bas de la page et cela fonctionne très bien sur le lien ci dessous
http://www.inoxcar.fr/testframes.html

si j'installe cette page sur un autre de mes sites en https elle ne fonctionne plus

https://www.aluformproducts.com/testframes.html

le script est le même et rien n'a changé

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
	<title>Exemple de menu fixe en CSS</title>
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script type="text/javascript" src="js/jquery-1.6.4.min.js"></script>
    <script type="text/javascript" src="Scripts/script.js"></script>
    
	<STYLE type=text/css>
		html, body {overflow:hidden;margin:0px;padding:0px;}
		body { font-family: trebuchet ms,arial,tahoma,verdana,sans-serif;}
		code {font-size:1em;}
		#menu { 
			position:fixed;
			overflow:auto;
			right:0px;
			left:0px;
			top:0px;
			height:95px;
			border:0px;
			background-color:#FFFFFF;
			font-size:90%;
		}
		#bloc-fixe2 { 
			position:fixed;
			overflow:auto;
			right:0px;
			left:0px;
			top:96px;
			height:200px;
			border:solid 1px;
			background-color:#F7F3EA;
			font-size:90%;
		}
		#content { 
			position:fixed;
			overflow:auto;
			right:0px;
			left:0px;
			bottom:0px;
			top:298px;
			border:solid 1px;
			background-color:#86ECB9;
		}
	</STYLE>
	<!--[if lt IE 7]>
		<STYLE type=text/css>
			html, body {height:100%;}
			#bloc-fixe, #contenu {
				position:absolute;
				width:100%;
			}
			#contenu {
				position:absolute;
				height: expression(document.documentElement.clientHeight - 85);
			}
		</STYLE>
	<![endif]-->
</head>
<body>
	<div id="menu">  		
            <a href="index.php" style="position:absolute;left:10px"><img src="images_index/logo-new2.gif" alt="css faciles" border="0" ></a>
      
      <p align="center" style="position:absolute;right:10px;margin-top:8px">
			Cette page est en rapport avec : <br>
			<a href="bastest.html">Accueil</a></p>
      
           
      
      		
		
</div>
    <div id="bloc-fixe2">
		
		
	</div>
<div id="content">
		<h1 align="center">Page test</h1>
		<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
<script type="text/javascript">
	 	document.getElementById("content").focus()
	</script>
</body>
</html>


$(document).ready(function(){
  
  /* Au clic sur un élément de menu... */
  $('#menu a').click(function(event){
    
    /* On récupère l'url du lien sur lequel on vient de cliquer. */
    var url = $(this).attr('href');
    
    /*
     * Dans notre bloc #content, on injecte le contenu
     * de la page ciblée (par le href)      */
    $('#content').load(url + " #content");
    
    /*
     * On évite le comportement par défaut qui est de 
     * nous envoyer sur la page donnée dans le href).
     */
    event.preventDefault();
  });
  
});




Merci de votre aide

guy
Modifié par guy06 (27 Jan 2017 - 10:55)
Salut Smiley smile

Je ne sais pas ce que ça vaut Smiley smile mais je vois que dans ton fichier (sur le https) il n'y pas le script avant la fermeture du body comme sur la démo du http !

C'est peut-être un détail ? Smiley smile
Administrateur
Attention il faut éviter cela :
$('#content').load(url + " #content");

Ce code signifie que l'on charge #content dans lui-même, ce qui aboutit à avoir ensuite
<div id="content"><div id="content"></div></div>


Il vaut mieux indiquer dans la page à charger un autre identifiant :
<div id="container"><div id="content"></div></div>

Puis écrire
$('#container').load(url + " #content");
Ah oui.... il est grand temps de supprimer les cadres (frames) sur un site web. Smiley smile

tu as récupéré un site web des années 90 ? (humour)