如何隐藏CQ5中的parsys组件?

如何隐藏CQ5中的parsys组件?

问题描述:

我已经学会了索姆有趣的事情我只是想分享,如何隐藏CQ5中的parsys组件?

见下

<div id="myDiv"> 
    <cq:include resourceType="foundation/components/parsys" path="par"/> 
</div> 

代码我们有parsys组件包括我们自己的专区内。所以当我们做

$('#myDiv').hide(); 

我们可以期望parsys也被隐藏,但它不会发生。

为什么?我们如何隐藏这个解析?

+0

ATLEAST提意见的downvoting的原因。 这是一个相当有用的帖子 – Oliver

一两件事,我们需要明白的是,如果我们需要获取任何CQ相关组件。我们需要使用CQ给出的WCM API。

如果我们parsys“相提并论”只是我们parsys低于内检查F12我们的组件,你会看到一个<script>标签。

例如,

CQ.WCM.edit({"path":"/content/mycompany/jcr:content/par/modal/modal-parsys","type":"foundation/components/parsys","csp":"pageComponent|page/par|parsys/modal|parbase/modal-parsys|parsys","isContainer":true}); 

路径: “/内容/ myCompany的/ JCR:内容/帕/模/模态-parsys”属性是这样的内容在这里作为又称的位置可编辑存储库中。

这被用作“分区ID”来定位parsys,dialobox或CQ任何内容。

我们用下面的代码隐藏的组件。

var parsysComp = CQ.WCM.getEditable('/content/mycompany/jcr:content/par/modal/modal-parsys'); 
if(parsysComp) // checking if Exists 
{ 
    parsysComp.hide(); 
} 

有用的信息: 如果您将此代码粘贴在$(文件)。就绪或$(窗口)。就绪这不会工作,因为CQ组件加载很多很多后DOM准备和独立的窗户。

,如果你想隐藏在页面的onload一个parsys然后将上面的代码中

CQ.WCM.on('editablesready', function() { 
    // Hiding parsys/editable code goes here 
}); 

如果你想隐藏parsys editbar在设计模式然后进入设计模式,所以说。检查(F12)并在设计模式下查找路径值。或许,这将是

/etc/designs/default/jcr:content/pageComponent/par/modal/modal-parsys 

因此,要获得可编辑的代码将

CQ.WCM.getEditable('/etc/designs/default/jcr:content/pageComponent/par/modal/modal-parsys 
'); 

参考文献:

CQ WCM API docs

Reference Link 2