Question

Quelqu'un sait le JavaScript pour la mise en display:none sur une zone partielle web vide? Je me souviens avoir vu une fois sur un site de publication, mais maintenant ne peut pas le trouver.

Ceci permet d'éviter le remplissage et l'espacement d'un affichage de la zone de partie web quand il n'y a pas de pièce de toile ajouté.

Était-ce utile?

La solution

WSS 3 pages WebPart a contenant les WebPartZones TD et ceux de TD ont un nom et identifiant qui est _invisibleIfEmpty. Ensuite, chaque page contient un javascript comme ceci:

<script language="javascript">if(typeof(MSOLayout_MakeInvisibleIfEmpty) == "function") {MSOLayout_MakeInvisibleIfEmpty();}</script>

La fonction MSOLayout_MakeInvisibleIfEmpty les rend invisibles ...

/ WW

Autres conseils

Ou, comme SharePoint Publishing Mise en page met:

<SharePointWebControls:ScriptBlock runat="server">
if(typeof(MSOLayout_MakeInvisibleIfEmpty) == &quot;function&quot;) 
{MSOLayout_MakeInvisibleIfEmpty();}</SharePointWebControls:ScriptBlock>

D'une certaine façon, MSOLayout _... n'a pas fonctionné pour moi, donc je l'ai écrit le code jQuery suivant qui fonctionne aussi bien et vérifie également s'il n'y a qu'un menu à l'intérieur de cette cellule avant qu'elle cache.

$('[name="_invisibleIfEmpty"]').filter(function () {
    return $.trim($(this).html()).length == 0 || $(this).children("menu").length;
}).hide();
Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top