add OpenLayers.Util.modifyAlphaImage() function and tests
git-svn-id: http://svn.openlayers.org/trunk/openlayers@448 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
@@ -709,6 +709,42 @@ OpenLayers.Util.alphaHack = function() {
|
||||
(version >= 5.5) && (version < 7) );
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {DOMElement} div Div containing Alpha-adjusted Image
|
||||
* @param {String} id
|
||||
* @param {OpenLayers.Pixel} px
|
||||
* @param {OpenLayers.Size} sz
|
||||
* @param {String} imgURL
|
||||
* @param {String} position
|
||||
* @param {String} border
|
||||
* @param {String} sizing 'crop', 'scale', or 'image'. Default is "scale"
|
||||
*/
|
||||
OpenLayers.Util.modifyAlphaImageDiv = function(div, id, px, sz, imgURL,
|
||||
position, border, sizing) {
|
||||
|
||||
OpenLayers.Util.modifyDOMElement(div, id, px, sz);
|
||||
|
||||
var img = div.childNodes[0];
|
||||
|
||||
if (imgURL) {
|
||||
img.src = imgURL;
|
||||
}
|
||||
OpenLayers.Util.modifyDOMElement(img, div.id + "_innerImage", null, sz,
|
||||
"relative", border);
|
||||
|
||||
if (OpenLayers.Util.alphaHack()) {
|
||||
div.style.display = "inline-block";
|
||||
if (sizing == null) {
|
||||
sizing = "scale";
|
||||
}
|
||||
div.style.filter = "progid:DXImageTransform.Microsoft" +
|
||||
".AlphaImageLoader(src='" + img.src + "', " +
|
||||
"sizingMethod='" + sizing + "')";
|
||||
img.style.filter = "progid:DXImageTransform.Microsoft" +
|
||||
".Alpha(opacity=0)";
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* @param {String} id
|
||||
* @param {OpenLayers.Pixel} px
|
||||
@@ -725,23 +761,13 @@ OpenLayers.Util.alphaHack = function() {
|
||||
OpenLayers.Util.createAlphaImageDiv = function(id, px, sz, imgURL,
|
||||
position, border, sizing) {
|
||||
|
||||
var div = OpenLayers.Util.createDiv(id, px, sz);
|
||||
var img = OpenLayers.Util.createImage(id + "_innerImage", null, sz,
|
||||
imgURL, "relative", border);
|
||||
var div = OpenLayers.Util.createDiv();
|
||||
var img = OpenLayers.Util.createImage();
|
||||
div.appendChild(img);
|
||||
|
||||
if (OpenLayers.Util.alphaHack()) {
|
||||
div.style.display = "inline-block";
|
||||
if (sizing == null) {
|
||||
sizing = "scale";
|
||||
}
|
||||
div.style.filter = "progid:DXImageTransform.Microsoft" +
|
||||
".AlphaImageLoader(src='" + imgURL + "', " +
|
||||
"sizingMethod='" + sizing + "')";
|
||||
img.style.filter = "progid:DXImageTransform.Microsoft" +
|
||||
".Alpha(opacity=0)";
|
||||
}
|
||||
|
||||
OpenLayers.Util.modifyAlphaImageDiv(div, id, px, sz, imgURL,
|
||||
position, border, sizing);
|
||||
|
||||
return div;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user