0

css

.myStyle {
height: 10px;
background-image: url(../myImage.png);
}

jsp

<img class=myStyle src=<% imageurl != null ? imageurl: (bacground-image property from my css)%> >

有什么办法可以做到这一点?我不想在我的代码中硬编码默认 url,以允许通过更改 css 属性来更改默认图像。

4

1 回答 1

0

你真正想要的是一个属性文件 - 例如像这样http://www.easywayserver.com/blog/java-resourcebundle-properties-file-jsp/

# image default
myimage.default=../myImage.png

<%@ page language="java" import="java.util.*" %>
<%
ResourceBundle resource = ResourceBundle.getBundle("commonVariable");
/// commonVariable.properties file will be in WEB-INF/classess  folder

String defaultImage=resource.getString("myimage.default");
.
.
.
if (imageurl==null) imageurl=defaultImage;

%>

<img class="myStyle" src="<%= imageurl  %>" />

如果必须的话,可以选择

https://stackoverflow.com/a/2104580/295783

function setImageFromBG(img) {
  var style = img.currentStyle || window.getComputedStyle(img, false),
  img.src = style.backgroundImage.slice(4, -1);
}

<img class="myStyle" src="<%= imageurl %>" onerror="setImageFromBG(this)" />

如果 bgimage 代码也无法提供良好的图像,则可能会循环

于 2013-01-14T06:41:38.307 回答