emu:为什么这样不运行?也欢迎别人回答。 因为后则你将javascript脚本写在了HTML标记结束之外,所以不会执行! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 qiuliang1979(qiuliang) :这样可以运行:<html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body bgcolor="#FFFFFF" text="#000000"></body></html><script language="JavaScript"><!-- var frm = window.frames; alert(frm.length); for (i=0; i < frm.length; i++) alert(frm[i].location);//--></script> 写在里面也执行不了吧呵呵。难道我会无缘无故的把它挪上去吗?框架网页没有body,所以script没有地方放了呵呵,只好往head里面放。 frameset 也可以用 onload=你要执行的函数 恩,用了onload就不用defer了,但是脚本还是要写在head里面啊,不然难道写noframe里面?谁来把下面的script挪下去?<html><head><title>Untitled Document</title><script language="JavaScript"><!--function test(){ var frm = window.frames; alert(frm.length); for (i=0; i < frm.length; i++) alert(frm[i].location);}//--></script><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><frameset rows="80,*" cols="*" frameborder="YES" border="5" framespacing="0" onload="test()"> <frame name="topFrame" scrolling="NO" noresize src="UntitledFrame-1.htm" > <frameset cols="80,*" frameborder="YES" border="5" framespacing="5"> <frame name="leftFrame" noresize scrolling="NO" src="zxcvbleft.htm"> <frame name="mainFrame" src="6.htm"> </frameset></frameset><noframes> </noframes> </html> 为什么这样可以运行:<html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body bgcolor="#FFFFFF" text="#000000"></body></html><script language="JavaScript"><!-- var frm = window.frames; alert(frm.length); for (i=0; i < frm.length; i++) alert(frm[i].location);//--></script>这样不能运行<html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><frameset rows="80,*" cols="*" frameborder="YES" border="5" framespacing="0"> <frame name="topFrame" scrolling="NO" noresize src="UntitledFrame-1.htm" > <frameset cols="80,*" frameborder="YES" border="5" framespacing="5"> <frame name="leftFrame" noresize scrolling="NO" src="zxcvbleft.htm"> <frame name="mainFrame" src="6.htm"> </frameset></frameset><noframes> </noframes> </html><script language="JavaScript"><!-- var frm = window.frames; alert(frm.length); for (i=0; i < frm.length; i++) alert(frm[i].location);//--></script> 呵呵,挪到</head>下面还是可以的:<html><head><title>emu</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><script language="JavaScript"><!--function test(){ var frm = window.frames; alert(frm.length); for (i=0; i < frm.length; i++) alert(frm[i].location);}//--></script><frameset rows="80,*" cols="*" frameborder="YES" border="5" framespacing="0" onload="test()"> <frame name="topFrame" scrolling="NO" noresize src="UntitledFrame-1.htm" > <frameset cols="80,*" frameborder="YES" border="5" framespacing="5"> <frame name="leftFrame" noresize scrolling="NO" src="zxcvbleft.htm"> <frame name="mainFrame" src="6.htm"> </frameset></frameset><noframes> </noframes> </html>不过我再没办法往下面挪了。谁来? 还有为什么这样可以:<html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><script language="JavaScript"><!--asdf();function asdf(){ var frm = window.frames; alert(frm.length); for (i=0; i < frm.length; i++) alert(frm[i].location);}//--></script><body bgcolor="#FFFFFF" text="#000000"></body></html>而这样不行:<html><head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><script language="JavaScript"><!--asdf();//--></script><script language="JavaScript"><!--function asdf(){ var frm = window.frames; alert(frm.length); for (i=0; i < frm.length; i++) alert(frm[i].location);}//--></script><body bgcolor="#FFFFFF" text="#000000"></body></html> 一对SCRIPT标记是作为一个整体加载的..你分开后引用对象时,对象还没定义.. 这是IE对框架集和对独立文档脚本支持上的一点差异..你用iframe就不存在这个问题.. 先引用后定义当然不行拉,这样就行了:<head><title>Untitled Document</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><script language="JavaScript" defer><!--//用defer延迟了它的运行asdf();//--></script><script language="JavaScript"><!--function asdf(){ var frm = window.frames; alert(frm.length); for (i=0; i < frm.length; i++) alert(frm[i].location);}//--></script><body bgcolor="#FFFFFF" text="#000000"></body></html> jquery的$.getJSON回调函数执行顺序问题。求原理 高手看过来:extjs 中如何关闭TabPanel中的选项卡页 怎么让jquery ajax 返回html? 有米有高手能实现在表格和树之间拖动数据 关于jquery的.load问题 这个问题很奇怪 求大牛翻译这段Javascript代码的意思 Easyui Combobox 怎么实现 清空当前值重新加载值 为何regulare.exec()没返回符合条件的所有结果? 冷冷冷!放分!放分!放分! 我有一个JS脚本是经过编码,哪有可以解码还原的软件? 怎样判断选择了单选框中的一个?
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF" text="#000000"></body>
</html>
<script language="JavaScript">
<!--
var frm = window.frames;
alert(frm.length);
for (i=0; i < frm.length; i++)
alert(frm[i].location);//-->
</script>
<head>
<title>Untitled Document</title>
<script language="JavaScript">
<!--
function test()
{
var frm = window.frames;
alert(frm.length);
for (i=0; i < frm.length; i++)
alert(frm[i].location);
}
//-->
</script>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<frameset rows="80,*" cols="*" frameborder="YES" border="5" framespacing="0" onload="test()">
<frame name="topFrame" scrolling="NO" noresize src="UntitledFrame-1.htm" >
<frameset cols="80,*" frameborder="YES" border="5" framespacing="5">
<frame name="leftFrame" noresize scrolling="NO" src="zxcvbleft.htm">
<frame name="mainFrame" src="6.htm">
</frameset>
</frameset>
<noframes>
</noframes>
</html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF" text="#000000"></body>
</html>
<script language="JavaScript">
<!--
var frm = window.frames;
alert(frm.length);
for (i=0; i < frm.length; i++)
alert(frm[i].location);//-->
</script>
这样不能运行<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<frameset rows="80,*" cols="*" frameborder="YES" border="5" framespacing="0">
<frame name="topFrame" scrolling="NO" noresize src="UntitledFrame-1.htm" >
<frameset cols="80,*" frameborder="YES" border="5" framespacing="5">
<frame name="leftFrame" noresize scrolling="NO" src="zxcvbleft.htm">
<frame name="mainFrame" src="6.htm">
</frameset>
</frameset>
<noframes>
</noframes>
</html>
<script language="JavaScript">
<!--
var frm = window.frames;
alert(frm.length);
for (i=0; i < frm.length; i++)
alert(frm[i].location);//-->
</script>
<head>
<title>emu</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<script language="JavaScript">
<!--
function test()
{
var frm = window.frames;
alert(frm.length);
for (i=0; i < frm.length; i++)
alert(frm[i].location);
}
//-->
</script>
<frameset rows="80,*" cols="*" frameborder="YES" border="5" framespacing="0" onload="test()">
<frame name="topFrame" scrolling="NO" noresize src="UntitledFrame-1.htm" >
<frameset cols="80,*" frameborder="YES" border="5" framespacing="5">
<frame name="leftFrame" noresize scrolling="NO" src="zxcvbleft.htm">
<frame name="mainFrame" src="6.htm">
</frameset>
</frameset>
<noframes>
</noframes>
</html>不过我再没办法往下面挪了。谁来?
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><script language="JavaScript">
<!--
asdf();
function asdf()
{
var frm = window.frames;
alert(frm.length);
for (i=0; i < frm.length; i++)
alert(frm[i].location);
}
//-->
</script><body bgcolor="#FFFFFF" text="#000000"></body>
</html>
而这样不行:<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><script language="JavaScript">
<!--
asdf();
//-->
</script><script language="JavaScript">
<!--
function asdf()
{
var frm = window.frames;
alert(frm.length);
for (i=0; i < frm.length; i++)
alert(frm[i].location);
}
//-->
</script><body bgcolor="#FFFFFF" text="#000000"></body>
</html>
你分开后引用对象时,对象还没定义..
你用iframe就不存在这个问题..
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><script language="JavaScript" defer>
<!--
//用defer延迟了它的运行
asdf();
//-->
</script><script language="JavaScript">
<!--
function asdf()
{
var frm = window.frames;
alert(frm.length);
for (i=0; i < frm.length; i++)
alert(frm[i].location);
}
//-->
</script><body bgcolor="#FFFFFF" text="#000000"></body>
</html>