Categories > TinyButStrong general (FR) >

onload et mtype en même temps ?

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: TiTi
Date: 2009-12-11
Time: 16:00

onload et mtype en même temps ?

Bonjour,

Sur un template assez volumineux, j'ai ceci :

<div id="mainbox">
    <div>[onload;block=div;when [var.re]=1]
        <p>....</p>
        <div>...</div>
        ... pleins d'autres balises, contenu dynamique, etc..
        ...
    </div>
    <div>[onload;block=div;when [var.re]=2]
        ...
    </div>
    ...
</div>

C'est un exemple simplifié mais l'idée est là : j'aimerais faire sauter les tags html <div> au niveau des onload (mais pas le contenu !).

Je me sens obligé d'utiliser ces <div> juste pour placer mon onload, car le contenu varie beaucoup, mais elles sont inutiles pour la page HTML finale.
L'idée serait de pouvoir utiliser le paramètre mtype avec onload...

Ou sinon comment faire ?
On peut faire un truc ignoble avec un MergeBlock mais j'ai déjà donné, je veux me passer de logique php.

Merci ++
By: TiTi
Date: 2009-12-11
Time: 16:49

Re: onload et mtype en même temps ?

ok j'ai réussi à trouver un truc à force de creuser, mais c pas très joli.
j'ai pensé à ca en lisant la doc sur ope=minv :

<div id="mainbox">
<div>[var._;noerr;magnet=div;mtype=m+m][onload;block=div;when [var.re]=1]
  <p>....</p>
  <div>...</div>
  ... pleins d'autres balises, contenu dynamique, etc..
  ...
</div>
<div>[var._;noerr;magnet=div;mtype=m+m][onload;block=div;when [var.re]=2]
  ...
</div>
...
</div>

Bon ca fait le boulot, mais c'est assez crade comme solution car :
-utilise une variable php indéfinie (ici $_)
=> ne marche plus si qlq'1 définie cette variable
-utilise noerr uniquement pour cacher le warning TBS
-combo magnet mtype

En plus je peux le placer ou je veux entre <div>et</div> en respectant la profondeur (encapsulation), avant mon onload, après, etc...

Pour le coup de noerr je pourrais donc définir une variable php particulière vide (et constante pour empêcher sa modification), mais ... j'ai pas envie :
-un peu chiant d'expliquer son rôle au reste de l'équipe
-si TBS pouvait le gérer avec onload+mtype ca serait vraiment sympa :D
By: Skrol29
Date: 2009-12-11
Time: 17:27

Re: onload et mtype en même temps ?

salut Titi,

Il y a plus simple :
<div> [onload;block=div/;when [var.re]=1]
avec le "div/", TBS ne cherche pas la balise fermante et limite le bloc à la balise TBS ou la balise ouvrante.

Mais si tes <div> ne servent que pour le positionnement des balises TBS, alors il y a plus propre :
<div id="mainbox">
  [onload;block=begin;when [var.re]=1]
  ...
  [onload;block=end]
  [onload;block=begin;when [var.re]=2]
  ...
  [onload;block=end]
</div>
<>
By: TiTi
Date: 2009-12-11
Time: 19:33

Re: onload et mtype en même temps ?

Merci!

J'ai pas bien capté le coup du div/ car j'ai besoin de délimiter un début et une fin de bloc.

Mais oui en effet le block=begin et block=end c'est une super idée ! Et le pire c'est que je la connaîs et que je l'ai déjà utilisée, mais pour des MergeBlock, pas des onload.

Super merci !
By: Skrol29
Date: 2009-12-15
Time: 16:31

Re: onload et mtype en même temps ?

Salut,

Le "block=div/" définie le bloc sur une balise simple au lieu de balise ouvrante + balise fermante. C'est utile dans certains cas. Il y a des exemples dans la doc.
By: TiTi
Date: 2009-12-15
Time: 16:35

Re: onload et mtype en même temps ?

Ah ok désormais je vois ce dont tu parles, genre pour la balise <img src="" alt="" /> qui n'a pas de balise de fermeture.