|
Ange-Louis Toma
|
Mercredi 11 Avril 2007 5:28:11 pm
Inclure du Javascript dans un template
Bonjour, j'aimerai faire un bandeau qui defile sur ma page.
Le meilleur moyen d'avoir ce resultat c'est d'utiliser un javascript.
Dans les docs, les balises {literal} {/literal} servent à imbriquer le code template et le code etranger (comme ce script recuperé sur le net ):
{literal}
<script type="text/javascript" src="defilementH.js"></script>
<script type="text/javascript">
<!--
var isStop=false;
var msg = 'Voici ... c\'est un <a href="http://www.google.fr">Lien vers google</a>. Clique moi !!';
var c = new scrollerObjH('c','2','300','30','300',msg,'fff3dc','fff3dc','1','25',0.1);
function manageAnim()
{
if (c) {
if (isStop==false) {
isStop=true;
c.stopAnim();
objBtn = document.getElementById("btn" ;
objBtn.value = "Start";
} else {
isStop=false;
c.startAnim();
objBtn = document.getElementById("btn" ;
objBtn.value = "Stop";
}//fin if
}//fin if
}//fin manageAnim
//-->
</script>
<input id="btn" type="button" value="Stop" onclick="manageAnim();">
{/literal}
Le script est bon, il marche dans un fichier html normal (avec rajout de balise body head html etc...)
Ce script est dans un template qui lui meme est inclus dans mon pagelayout.tpl
Le chemin du fichier .js est bon (ils sont tous les deux dans le meme repertoire)
Il y a une declaration de javascript dans le head de mon pagelayout:
{section name=JavaScript loop=ezini( 'JavaScriptSettings', 'JavaScriptList', 'design.ini' ) }
<script language="JavaScript" type="text/javascript" src={concat( 'javascript/',$:item )|ezdesign}></script>
{/section}
{literal}
<!--[if lt IE 6.0]>
<style>
div#maincontent-design { width: 100%; } /* This is needed to avoid width bug in IE 5.5 */
</style>
<![endif]-->
{/literal}
{include uri="design:page_head.tpl"}
</head>
.... <!-- suite du pagelayout.tpl -->
Le bandeau ne s'affiche pas, seul le bouton "STOP" est affiché.
Si quelqu'un a une idée... Merci !
|
|
Julien Plesniak
|
Lundi 06 Août 2007 11:26:19 am
Re: Inclure du Javascript dans un template
Salut,
Pour ma part , je n'ai jamais réussi a insérer du javascript directement dans une template. La solution que j'ai trouvée et qui est beaucoup plus propre est de mettre toutes tes fonctions dans un fichier js que tu place dans le dossier design/tondesign/javascript et que tu déclare dans le fichier design.ini.append.php comme ceci:
[JavaScriptSettings]
JavaScriptList[]=fichier.js
Julien Plesniak
Cornut Informatique
|