Salut tout le monde,
Voilà depuis un moment, je me demandais comment faire pour me passer de cette balise utilisée dans le bloc "Nouveaux Membres" tout en ayant la même chose d'afficher. Pourquoi cela, simple ---> W3C
Bref après moulte recherche, j'ai finit par tomber sur ce petit site :
http://moncastel.9online.fr/marquee/defil_v.html (un grand merci à lui)
Il y a d'autre petit truc qui ont bien simpatique aussi.
Ce script fonctionnait très bien sous IE et plutot mal sous firefox à cause d'un truc, donc légère correction et boom cela marche pour les deux...
J'ai testé ce script dans le fameu bloc pour mon site et cela marche très bien je trouve, alors je vais vous en faire profiter
Voici la marche à suivre :
-> Editer le template : system_block_newusers.html
-> Ajoutez ceci au debut du template :
<script type="text/javascript">
<!--
// pas de défilement :
var pas=2
// hauteur de la partie visible
var h_fen="200px"
function scrollmrq(){
if ( parseInt(mrq.style.top) > -h_mrq )
mrq.style.top = parseInt(mrq.style.top)-pas+"px"
else
mrq.style.top=h_fen
}
function init_mrq(){
mrq=document.getElementById("marquee");
fen=document.getElementById("fenetre");
fen.onmouseover=function(){stoc=pas;pas=0};
fen.onmouseout=function(){pas=stoc};fen.style.height=h_fen;
h_mrq=mrq.offsetHeight;
with(mrq.style){position="absolute";top=h_fen;}
setInterval("scrollmrq()",50);
}
function addEvent(obj,evType,fn,capt){ // ajoute un événement sans écraser l'éxistant.
if(obj.addEventListener){obj.addEventListener(evType,fn,capt);return true;} // NS6+
else if(obj.attachEvent)obj.attachEvent("on"+evType,fn) // IE 5+
else {return false;}
}
addEvent(window,"load",init_mrq)
//-->
</script>
<div style="position:relative;overflow:hidden;text-align:left;margin:auto;height: 200px;" id="fenetre">
<div style="position: absolute; top: -800px;" id="marquee">
-> Puis cela à la fin du template :
</div>
</div>
Voilà c'est finit, valider ^^
Voici pour moi ce que ça donne côté template :
<script type="text/javascript">
<!--
// pas de défilement :
var pas=2
// hauteur de la partie visible
var h_fen="200px"
function scrollmrq(){
if ( parseInt(mrq.style.top) > -h_mrq )
mrq.style.top = parseInt(mrq.style.top)-pas+"px"
else
mrq.style.top=h_fen
}
function init_mrq(){
mrq=document.getElementById("marquee");
fen=document.getElementById("fenetre");
fen.onmouseover=function(){stoc=pas;pas=0};
fen.onmouseout=function(){pas=stoc};fen.style.height=h_fen;
h_mrq=mrq.offsetHeight;
with(mrq.style){position="absolute";top=h_fen;}
setInterval("scrollmrq()",50);
}
function addEvent(obj,evType,fn,capt){ // ajoute un événement sans écraser l'éxistant.
if(obj.addEventListener){obj.addEventListener(evType,fn,capt);return true;} // NS6+
else if(obj.attachEvent)obj.attachEvent("on"+evType,fn) // IE 5+
else {return false;}
}
addEvent(window,"load",init_mrq)
//-->
</script>
<div style="position:relative;overflow:hidden;text-align:left;margin:auto;height: 200px;" id="fenetre">
<div style="position: absolute; top: -800px;" id="marquee">
<table width="100%" class="subType" border="0" cellpadding="0" cellspacing="1">
<{foreach item=user from=$block.users}>
<tr class="<{cycle values="even,odd"}>" valign="middle">
<td align="center">
<{if $user.avatar != ""}>
<img src="<{$user.avatar}>" alt="" width="32" /><br />
<{/if}>
<a href="<{$xoops_url}>/userinfo.php?uid=<{$user.id}>"><{$user.name}></a>
</td>
<td align="center"><{$user.joindate}></td>
</tr>
<{/foreach}>
</table>
</div>
</div>
Et côté apparence :
NWN-PANDORNVoilou, maintenant je finit par une petite demande :
-> Pourquoi ne pas intégrer un script de ce type au noyau de xoops ?
Comme ça finit la balise MARQUEE, et vive XOOPS conforme W3C