搜索和搜索後,我發現自己的方法做到了,而無需使用外部JS源代碼,並且沒有授權問題。定位絕對,並將寬度和高度設置爲100%,玩一個div的ocupacy並在那裏。我需要創建額外的表格才能夠將圖像居中,而不是在div上工作。不要忘記z-index將div和table放在所有其他元素之上。歡呼聲......
function enlargeimage(x)
{
var a = document.getElementById('_enlargeimg');
a.style.height = x + '%';
a.style.width = x + '%';
x++;
if (x < 90)
{ setTimeout("enlargeimage(\"" + x + "\")", 5);}
}
function reduceimage(x)
{
var a = document.getElementById('_enlargeimg');
a.style.height = x + '%';
a.style.width = x + '%';
x--;
if (x > 0)
{ setTimeout("reduceimage(\"" + x + "\")", 5);}
else
{
b = document.getElementById('_enlargediv');
c = document.getElementById('_enlargetable');
b.parentNode.removeChild(b);
c.parentNode.removeChild(c);
document.body.style.overflow = 'auto';
}
}
function createelements(imgfile)
{
var divbackground = document.createElement('div');
divbackground.setAttribute('id', '_enlargediv');
divbackground.style.width = '100%';
divbackground.style.height = '100%';
divbackground.style.position= 'absolute';
divbackground.style.background= '#000';
divbackground.style.left= '0';
divbackground.style.top= '0';
divbackground.style.opacity= 0.7;
divbackground.style.zIndex= '1';
document.body.appendChild(divbackground);
var tblbackground = document.createElement('table');
tblbackground.setAttribute('id', '_enlargetable')
tblbackground.style.width = '100%';
tblbackground.style.height = '100%';
tblbackground.style.position= 'absolute';
tblbackground.style.left= '0';
tblbackground.style.top= '0';
tblbackground.style.zIndex= '2';
tblbackground.style.textAlign = 'center';
tblbackground.style.verticalAlign = 'middle';
tblbackground.setAttribute('onClick', 'reduceimage(90)');
var tr = tblbackground.insertRow();
var td = tr.insertCell();
var nimg = document.createElement('img');
nimg.setAttribute('src', imgfile);
nimg.setAttribute('id', '_enlargeimg');
nimg.style.width='0px';
nimg.style.height='0px'
nimg.style.borderRadius = '5px';
td.appendChild(nimg);
document.body.appendChild(tblbackground);
document.body.style.overflow = 'hidden';
enlargeimage(0);
}
謝謝,我可以使用.dialog或jQuery的類似小部件來放大圖像嗎? – Mosaic
答案几乎總是「是」,但我的問題沒有背景。你爲什麼還沒有顯示任何代碼? –