问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我想通过javascript在一个新窗口打开一个网站,然后延迟几秒后得到它...

发布网友 发布时间:2022-04-23 07:43

我来回答

9个回答

热心网友 时间:2022-04-23 18:43

花了我一整个晚上,才搞定你的提问。怕说不清楚,写的长了些,希望可以写明白让你看懂。

先说说你程序的错误:
第一个:open方法有4个参数,其中第二个参数你没有写,它是控制打开URL的方式,比如说在新窗口打开,在父窗口打开,或者在自身窗口打开等等,你不写的话这个方法就要出错,怎么也要写个“null”呀。
想知道它的具体情况,我也在帮助文件里找好了,内容如下
---------------------------------------------------------------------------------------------------------
*********可以先略去不看********
Optional. When opening up a new document, specifying the String replace for sName designates that the new document is to replace the current document in the history list. If the value replace is not specified when opening up a document, a new entry will simply be added to the history list. When opening a window, this is a String that specifies the name of the window. The value of this parameter may be specified as the value of the TARGET attribute for a form or a element. This value will then will define this new window as the place to load a document. replace This value is only used for opening up a new document and specifies that the new document is to replace the current entry in the history list.
_blank When opening a window, the sUrl is loaded into a new, unnamed window.
_parent When opening a new window, the sUrl is loaded into the current frame's parent. If the frame has no parent, this value acts as the value _self.
_search Available in Internet Explorer 5 and later. When opening a window, the sUrl is opened in the browser's search pane.
_self When opening a window, the current document is replaced with the specified sUrl .
_top sUrl replaces any framesets that may be loaded. If there are no framesets defined, this value acts as the value _self.
_media Available in Internet Explorer 6 and later. The sUrl is loaded in the Media Bar.
--------------------------------------------------------------------------------------------------

第二个:setTimeout方法调用的hello方法你没有加括号,由于javascript的变量可以不用声明直接使用,少了括号的话,这样它就成了变量,而不是你想要的hello方法。
window.onload=openwin;这一句同样没有加括号。

第三个:setTimeout调用的方法hello要加“”号,你没有加。

**************************************************************
**************************************************************
挑完错,得来点实在的有用的,代码已写好,
你自己先看看,不懂的再问,好吗
下边的代码我已经多次测试过,直接复制就可以用

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>answer</title>
</head>
<body>
<script type="text/javascript">
var s="http://www.sina.com.cn ";
function openwin(){
s="http://www.sina.com.cn "
var win=window.open(s,"null","height=100,width=100,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no");
setTimeout("hello()",5000);
}
function hello(){
alert(window.s);
}
window.onload=openwin();

</script>

</body>
</html>

楼主在hello方法里的alert(win.location.href);语法并不错,可以获取URL。只是调用它的对象不能是win。可以改成alert(window.location.href);加上去,程序一样可以显示出来,说明这句话语法是对的。
还有就是,在javascript里边,可以让它报错的,这个要对IE浏览器进行设置,方法如下:
IE浏览器----工具----internet选项----高级,把“禁用脚本调试”前边的勾去掉,把“显示每个脚本错误的通知”前边打上勾。就OK了,以后IE报错的时候,可以查看详细信息。

热心网友 时间:2022-04-23 20:01

首先解决下面回答人的疑问 script 里面是不会报错的除非你自定义的有、有错的地方script 就不会运行起走了。 然后我解决楼主的问题
1、你在script 里面写的window.onload 为什么不写在jsp页面的body里面 onload="openwin()"这样就避免了浏览器版本的不支持
2、我实在不理解 你的win.location.href 是怎么获取到URL的 你的win是获取到http://www.sina.com.cn返回回来的值 也就是要在http://www.sina.com.cn 里面写到window.returnValue="";win才能接收到这里的数据
3、你的win.location.href 在script里面 我只知道 有一个是跳转页面并没有听过或者使用于获取URL
4、综上你可以试试 1的提示 和在http://www.sina.com.cn 的script里面加上 window. returnValue="http://www.sina.com.cn";然后把win.location.href改为 win

热心网友 时间:2022-04-23 21:36

你哪个open方法少了个参数。 必须要一个窗体名参数。

function openwin(){
var win=window.open("http://www.sina.com.cn","name","height=500,width=500");
setTimeout(hello,5000);
function hello(){
alert(win.location.href);
}
}
window.onload=openwin;

这段就可以执行。
可以用窗体名拿到他的属性等等。

热心网友 时间:2022-04-23 23:27

<script language="javascript">
function openwin(){
var win=window.open("http://www.sina.com.cn","height=100,width=100,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no");
setTimeout(hello,5000);
function hello(){
alert(win.location.href);
}
}
window.onload=openwin;
</script>

问题是win.location.href这个显示不出来,如果不写setTimeout延迟的话,显示的则是about:blank。请问哪里写错了,谢谢!

热心网友 时间:2022-04-24 01:35

额,等到子窗口打开的时候再去获取的话就造成跨域了,所以win.location.href就没值了,没跨域是可以的

热心网友 时间:2022-04-24 04:00

你这样写都知道你打开的是什么网页也
为什么还要这样取呢?
延时这段时间,还会有别的操作吗?

热心网友 时间:2022-04-24 06:41

调用方法不用加括号的吗? 或许我真的不懂你那个onload是怎么样的一个用途 且好像你也没有调用hello 的方法

热心网友 时间:2022-04-24 09:39

你用FireBug调试下就知道问题出在哪里了

热心网友 时间:2022-04-24 12:54

执行时,
win.location.href
这一句报错,你那里没 有吗?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
笔记本电脑的哪些牌子什么牌子的笔记本电脑好 笔记本电脑品牌质量排行榜你知道哪个最耐用全面解析笔记本电脑品牌的质 ... 十大笔记本电脑品牌笔记本电脑推荐品牌 各大汽车电脑品牌厂家官方售后服务电话合辑v3.00 哪种笔记本电脑售后好哪个品牌电脑售后好 各大笔记本电脑品牌售后网点及售后电话汇总解决您笔记本电脑问题的选 ... 如何教育孩子成学霸 学霸的家长是怎样培养孩子的? 聪明的懒孩子怎么变成学霸 学霸孩子怎么培养 javascript怎么不刷新页面改变url地址 javascript 实现URL捕获 求助javascript脚本代码,根据url条件判断,控制div层的显示和隐藏_百度... js实现在页面打开链接时自动给url加上#记录值参数 在input文本框中用javascript调用当前url地址 把文本中的URL地址转换为可点击链接的JavaScript、PHP自定义函数_百度... JS编程:怎么编写一个JS代码,到达指定时间的时候会自动替换URL内容呢? 怎么用Javascript动态组织URL? JS实现网页上随机产生超链接地址的方法 怎样在js中动态生成url 当地址栏URL发生改变自动运行一段js代码,请问如何实现? 喝柠檬水有没有什么禁忌 如何用 JS 获得自动跳转后的 URL 地址 js自动获取地址栏中的url怎么实现 白天喝柠檬水会变黑,对此你如何看? 360安全浏览器有哪些特征? 为什么360安全浏览器页面老是崩溃? 360安全浏览器 打不开怎么回事啊? 我在徽商银行已经有住房按揭贷款了,还能不能再 徽商银行贷款9万了年还152000是高利贷吗? 将某个链接写在js文件里,打开某个网页时可以自动调用js当中的链接_百度... js定时执行一个url而不跳转 Javascript的URL如何像C#中UrlEncode和UrlDecode一样使用? 在其它页面输入文本框的URL地址,实现新网页的IFRAME对其引用;如何使用JAVASCRIPT实现?? js显示url地址内容 js如何自动识别当前页图片地址并形成链接可点击弹出新窗口 宽带的衰减是什么意思?为什么2M的宽带达不到2M/S的下载速度? 我们是怎样的一代人? 请问上海领取公积金要哪些证件 求把下列内容翻译成英文 请问有人有关于网上银行的英文文献吗?要中英互译的 大学生找工作为什么这么难啊 请英语水平优秀的人士,帮我翻译一下! 用什么软件可以看免费看太古龙象绝 哪位好心人可以帮我把下面这段话翻译成英文啊?因为我英语一般但写作业的时候又需要用到,不要在线翻译, 为什么现在中国人消费不是量入为出,而是及时行乐 你的宅家运动计划实施到哪里了? 如何计算下载速度 找英语高手翻译 屈组词,用屈字怎么组词