为什么要提出这个问题?
显而易见,许多页面里不仅要放置一个脚本,许多情况下,脚本的激活要依靠<body onload="function()">的方法的。一般情况下,我们不能在body标签内同时用两个onload来使两个脚本同时运行。
那么,有没有解决的方法呢?有的,下面的方法提供了一种有效的途径。
下面是一个例子,我们要同时运行两个脚本:一个是弹出窗口,一个是在状态行的跑马灯脚本。在单独运行脚本的情况下,弹出窗口用<body onload="popwin()">激活,跑马灯用<body onload="scrollin()">激活。
(1)弹出窗口源代码:
<html>
<head>
<script language="javascript">
<!--
function popwin(){
window.open("2scriptspop.htm","newwin","width=120,height=120");
}
//-->
</script>
</head>
<body onload="popwin()">
</body>
</html>
(2)状态栏跑马灯的源代码是:
<html>
<head>
<script language="javascript">
<!-- begin
var message="本站虚拟域名http://java2000.126.com";
var place=1;
function scrollin() {
window.status=message.substring(0, place);
if (place >= message.length) {
place=1;
window.settimeout("scrollout()",300);
} else {
place++;
window.settimeout("scrollin()",50);
}
}
function scrollout() {
window.status=message.substring(place, message.length);
if (place >= message.length) {
place=1;
window.settimeout("scrollin()", 100);
} else {
place++;
window.settimeout("scrollout()", 50);
}
}
// end -->
</script>
</head>
<body onload="scrollin()">
</body>
</html>
问题是:如何同时运行onload来激活两个脚本呢?
这样做:
<script language="javascript">
function together()
{
function #1
function #2
}
</script>
其中,function #1 就是popwin();function #2就是scrollin()。然后在<body>标签中统一调用together()即可。
下面是本例的完全代码。
看看执行情况,弹出窗口和状态栏跑马灯同时正常运行着。
希望对大家有所帮助。
<html>
<head>
<script language="javascript">
function together() {
popwin()
scrollin()
}
</script>
<script language="javascript">
<!--
function popwin(){
window.open("2scriptspop.htm","newwin","width=120,height=120");
}
//-->
</script><script language="javascript">
<!-- begin
var message="本站虚拟域名http://java2000.126.com";
var place=1;
function scrollin() {
window.status=message.substring(0, place);
if (place >= message.length) {
place=1;
window.settimeout("scrollout()",300);
} else {
place++;
window.settimeout("scrollin()",50);
}
}
function scrollout() {
window.status=message.substring(place, message.length);
if (place >= message.length) {
place=1;
window.settimeout("scrollin()", 100);
} else {
place++;
window.settimeout("scrollout()", 50);
}
}
// end -->
</script>
</head>
<body onload="together()">
</body>
</html>
--------------------------------------------------------------------------------
闽公网安备 35060202000074号