在wicket应用程序中动态设置背景图像

时间:2013-06-17 05:57:38

标签: wicket

在我的wicket应用程序中,根据用户的角色和不同的标准,有针对用户的页面。在我的数据库中,我存储了要用作该用户背景的图像路径。每个用户都有一个独特的页面。我知道如果我这样做,我可以添加读取图像:

<img wicket:id="img">

并且对应于此我正在编写将为我获取图像的代码。

但是我怎样才能动态地将图像设置为身体背景。我对wicket来说几乎是新手。可以有人知道如何做到这一点吗?

1 个答案:

答案 0 :(得分:4)

在您的页面中,您可以通过一些标题贡献来实现:

   @Override
   public void renderHead(IHeaderResponse response) {
      super.renderHead(response);
      response.render(CssHeaderItem.forCSS("body{ background-image: url('" + getBackgroundBodyImagePath() + "');};", "uniqueBodyBackground"));
   }

或者您可以为您的<body>元素分配一个wicket ID并添加AttributeModifier,如下所示:

   @Override
   protected void onInitialize() {
      super.onInitialize();
      bodyElement.add(AttributeModifier.replace("style", "background-image: url(" + getBackgroundBodyImagePath() + \"');"));
   }