如何在 vaadin 7 中将 OnClick 事件设置为 <body> 元素?

How I set a OnClick event to <body> element in vaadin 7?

我需要"emulate"这个:

document.getElementsByTagName("body")[0].onclick = function gameOver() { ...}

在 vaadin 7 中,当用户点击网页上的任意位置时显示一个对话框

我的代码:

//...
    @Override
    protected void init(VaadinRequest request) {

        Label labelH1 = new Label("<span style=\"color:SteelBlue;\">M</span>atching "
                + "<span style=\"color:Purple;\">G</span>ame!", ContentMode.HTML);
        labelH1.setStyleName("h2");

        Label labelH4 = new Label("Click on the extra smiling face on the <span>left</span>.",
                ContentMode.HTML);
        labelH4.setStyleName("h4");

        CssLayout layout = new CssLayout();
        AbsoluteLayout leftLayout = new AbsoluteLayout();
        leftLayout.setId("leftSide");

        AbsoluteLayout rightLayout = new AbsoluteLayout();
        rightLayout.setId("rightSide");

        layout.addComponent(labelH1);
        layout.addComponent(labelH4);
        layout.addComponent(leftLayout);
        layout.addComponent(rightLayout);

        setContent(layout);
}

您可以在当前 UI 上使用点击侦听器。如下:

UI.getCurrent().addClickListener(new ClickListener()
        {

            @Override
            public void click(com.vaadin.event.MouseEvents.ClickEvent event)
            {
                // You can show the dialouge box or any other of your desired task here ...!!!
                System.out.println("UI is clicked");

            }
    });