![]() |
#2
gupiao1752010-08-20 18:20
![]() <SCRIPT language=javascript type=text/javascript> 准备几张图片1.jpg...N.jpg都可以,然后按照上面的形式就可以把照片地址传到小层里显示!至于样式自己进函数里改吧!Shade = new function() { /*新建一个Shade函数,当隐藏图层显示时,将网页后面变暗*/ var handle = {}; var shade; handle.show = function() { if (!shade) { shade = document.createElement('div'); /*新建一个div元件*/ shade.className = 'tb-shade'; /*设置shade区CSS为’tb-shade’,名称和第三步中的一致*/ document.body.appendChild(shade); } with(('CSS1Compat')?document.documentElement:document.body) { var ch = clientHeight, sh = scrollHeight; shade.style.height = (sh > ch ? sh : ch) + 'px'; shade.style.width = offsetWidth + 'px'; shade.style.display = 'block'; } }; handle.hide = function() { shade.style.display = 'none'; }; return handle; } var div=document.createElement('div');//建立全局变量DIV; function showPanel(src) { /*显示panel函数,参数src就是图片地址*/ Shade.show();/* 执行Shade.show()命令,即后面为暗色*/ div.style.cssText='z-index:2008;position:absolute;left:300px;top:100px;'; div.id='Panel'+src; document.body.appendChild(div); div.innerHTML="<img src='"+src+"' width='150px' height='150px' onclick=hidePanel('"+src+"'); />"; } function hidePanel(src) { /*隐藏panel函数 */ Shade.hide();/*执行Shade.hide命令,暗色消失*/ document.body.removeChild(div); } </SCRIPT> <STYLE> .tb-shade {DISPLAY: none; Z-INDEX: 2007; FILTER: alpha(opacity=60); LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px; BACKGROUND-COLOR: #ccc; opacity: .6}/*z- index可自行修改,但必须比#Panel的值要小,filter中的alpha控制显示透明透,可自行调整*/ </STYLE> <img src="1.jpg" width="300px" height="300px" onclick="showPanel('1.jpg')"/> <img src="2.jpg" width="300px" height="300px" onclick="showPanel('2.jpg')"/> <img src="3.jpg" width="300px" height="300px" onclick="showPanel('3.jpg')"/> |

<DIV id=Panel style="DISPLAY: none"><A style="DISPLAY: block; FLOAT: right" onclick=hidePanel(); href="#">【关闭】</A></DIV>
<SCRIPT language=javascript type=text/javascript>
Shade = new function() { /*新建一个Shade函数,当隐藏图层显示时,将网页后面变暗*/
var handle = {};
var shade;
handle.show = function() {
if (!shade) {
shade = document.createElement('div'); /*新建一个div元件*/
shade.className = 'tb-shade'; /*设置shade区CSS为’tb-shade’,名称和第三步中的一致*/
document.body.appendChild(shade);
} with(('CSS1Compat')?document.documentElement:document.body) {
var ch = clientHeight, sh = scrollHeight;
shade.style.height = (sh > ch ? sh : ch) + 'px';
shade.style.width = offsetWidth + 'px';
shade.style.display = 'block';
}
};
handle.hide = function() {
shade.style.display = 'none';
};
return handle;
}
function showPanel() { /*显示panel函数*/
Shade.show();/* 执行Shade.show()命令,即后面为暗色*/
document.getElementById('Panel').style.display = 'block'; /*这里的Panel应和隐藏图层内名称一致 */
document.getElementById('frame').src = "http:// /*设置frame的源,可自行修改,同时“frame”名称和隐藏图层内一致*/
document.getElementById('Panel').scrollIntoView();
}
function hidePanel() { /*隐藏panel函数 */
Shade.hide();/*执行Shade.hide命令,暗色消失*/
document.getElementById('Panel').style.display = 'none'; /*将隐藏图层CSS设置为none,即不显示*/
}
</SCRIPT>
<STYLE>
.tb-shade {DISPLAY: none; Z-INDEX: 2007; FILTER: alpha(opacity=60); LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px; BACKGROUND-COLOR: #ccc; opacity: .6}/*z-index可自行修改,但必须比#Panel的值要小,filter中的alpha控制显示透明透,可自行调整*/
#Panel { MARGIN-TOP: -260px; DISPLAY: none; Z-INDEX: 2008; LEFT: 50%; MARGIN-LEFT: -325px; WIDTH: 650px; POSITION: absolute; TOP: 50%; BACKGROUND-COLOR: #fff}/*设置隐藏层位置、宽度,可自行修改*/
</STYLE>
<a href="#" onclick="showPanel(); return false;"><strong>测试</strong></a>/*链接上加上onclick命令,点击后执行showPanel()函数,名称应和javascript中设置相同*/
哪位可以帮我改一下这段代码,通过点击“测试”弹出层效果,并把需要的值传递给弹出的层。<SCRIPT language=javascript type=text/javascript>
Shade = new function() { /*新建一个Shade函数,当隐藏图层显示时,将网页后面变暗*/
var handle = {};
var shade;
handle.show = function() {
if (!shade) {
shade = document.createElement('div'); /*新建一个div元件*/
shade.className = 'tb-shade'; /*设置shade区CSS为’tb-shade’,名称和第三步中的一致*/
document.body.appendChild(shade);
} with(('CSS1Compat')?document.documentElement:document.body) {
var ch = clientHeight, sh = scrollHeight;
shade.style.height = (sh > ch ? sh : ch) + 'px';
shade.style.width = offsetWidth + 'px';
shade.style.display = 'block';
}
};
handle.hide = function() {
shade.style.display = 'none';
};
return handle;
}
function showPanel() { /*显示panel函数*/
Shade.show();/* 执行Shade.show()命令,即后面为暗色*/
document.getElementById('Panel').style.display = 'block'; /*这里的Panel应和隐藏图层内名称一致 */
document.getElementById('frame').src = "http:// /*设置frame的源,可自行修改,同时“frame”名称和隐藏图层内一致*/
document.getElementById('Panel').scrollIntoView();
}
function hidePanel() { /*隐藏panel函数 */
Shade.hide();/*执行Shade.hide命令,暗色消失*/
document.getElementById('Panel').style.display = 'none'; /*将隐藏图层CSS设置为none,即不显示*/
}
</SCRIPT>
<STYLE>
.tb-shade {DISPLAY: none; Z-INDEX: 2007; FILTER: alpha(opacity=60); LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px; BACKGROUND-COLOR: #ccc; opacity: .6}/*z-index可自行修改,但必须比#Panel的值要小,filter中的alpha控制显示透明透,可自行调整*/
#Panel { MARGIN-TOP: -260px; DISPLAY: none; Z-INDEX: 2008; LEFT: 50%; MARGIN-LEFT: -325px; WIDTH: 650px; POSITION: absolute; TOP: 50%; BACKGROUND-COLOR: #fff}/*设置隐藏层位置、宽度,可自行修改*/
</STYLE>
<a href="#" onclick="showPanel(); return false;"><strong>测试</strong></a>/*链接上加上onclick命令,点击后执行showPanel()函数,名称应和javascript中设置相同*/
比如通过点击一张图片,弹出一个层,然后将图片的地址传递 给这个层,并显示缩略图!!
或者重新提供一份JS的效果也行!!小弟对JS不太懂!!在此谢过了!