无法将rich:panel滚动条链接到rich:tree

时间:2012-11-15 14:18:48

标签: jsf richfaces

使用:JSF 1.2 + RichFaces 3.3.3

我们无法将rich:面板的滚动条链接到rich:tree组件。选择或突出显示节点发生在rich:tree中。但是我们无法将滚动条与突出显示的节点链接,因此即使选择溢出div,滚动条也不会相应地移动,因为突出显示的节点对用户不可见。

如果我们手动向下滚动到特定节点,我们可以看到节点突出显示。

我们已尝试以下步骤解决但问题尚未解决

  1. 按下每个向下或向上箭头按下js并使用固定高度移动主div的滚动条 container.scrollTop = 16。

  2. 传递突出显示的节点并使用treeItem.scrollIntoView(true)滚动到该节点的视图; 和container.scrollTop。

  3. 试图查找突出显示的节点,然后将其传递给js,但发现难以访问前端突出显示的节点。

  4. 在这个问题上苦苦挣扎超过2天。

    如何解决此问题?我们走投无路了吗?

    提前感谢您的帮助。 拉梅什

    代码段:

            <div class="treespaceheight" >
        <rich:panel styleClass="treeStyleClass">
    
            <rich:tree styleClass="treewidth" id="tree" 
                iconCollapsed="../../images/ImgNodePlus.gif"    
                iconExpanded="../../images/ImgNodeMinus.gif"                    
                reRender="selectedNode" switchType="client"
                ajaxSubmitSelection="true"
                value="#{commoncontroller.quotevo.quotetreeNode}"                           
                ondblclick="setNodeToggle(event);" oncontextmenu="false"   
                adviseNodeOpened="#{commoncontroller.quotevo.adviseNodeOpened}" 
                adviseNodeSelected="#{commoncontroller.quotevo.adviseNodeSelected}" >                                                                       
            </rich:tree>
        </rich:panel>
    
        </div>
    

1 个答案:

答案 0 :(得分:0)

让我们尝试通过css类获取所选节点。 我想你可以用

jQuery('.rich-tree-node-selected')

获取该节点! 或者你可以通过编辑树attr“selectedClass”来设置你自己的类。