一个棘手的html网页制作问题
时间:2008-05-29
来源:互联网
我们发现:当我们打开网页:http://www.g.cn/时,网页将最终跳转到http://www.google.cn/(即浏览器中显示的网址);同样,打开:http://www.baidu.com/a.asp时,网页将最终跳转到http://www.baidu.com/search/error.html。而多数网页不会跳转,例如:打开http://mp3.baidu.com/时,网页地址仍然是http://mp3.baidu.com/。
现在,我想自己制作一个html网页(文件名:test.htm)。该网页要实现这样的功能:提取任何一个网页的最终网址,即:当我们在文本框中输入一个网址(如:http://www.g.cn/),点“确定”,则显示它最终跳转到的网址(http://www.google.cn/)(若该网页不会跳转,如:http://mp3.baidu.com/,则显示它目前的网址)。
该test.htm源文件如下:
请输入网址: <input type="text" name="t1" > <input value="确定" name="B1" type="botton" onclick=zh()> <br>
该网页最终地址: <input type="text" name="t2" >
<script language="javascript">
function zh()
{...
}
</script>
可惜我不知道function zh()这个javascript程序应该怎么写。特请求帮助!
我曾想过以下2种方案,但都无法实现!
方案1:
<script language="javascript">
function zh()
{var win = window.open(t1.value,"newwindow", "");
t2.value=win.location.href;
}
</script>
此方案的问题出在win.location.href。因为无论是javascript还是vbscript,都不允许跨域操作。但我的test.htm是在本机运行,不可能是输入的网址(如http://www.google.cn)在同一域名下。我在网上搜索了一些解决跨域的方法,并进行了尝试,但好象都无法提取win.location.href。
方案2:
<script language="javascript">
function zh()
{var url=t1.value;
var Http=new ActiveXObject("MSXML2.XMLHTTP");
Http.open("get",url,false);
Http.send() ;
t2.value=...;
}
</script>
此方案可以用Http.responseText提取任何一个网址(如http://www.google.cn)的源代码,但我却不知道用哪个函数提取该网页的网址。
请各位网有帮忙。您可以修正以上的2种方案,也可以提出您的方案。谢谢!
现在,我想自己制作一个html网页(文件名:test.htm)。该网页要实现这样的功能:提取任何一个网页的最终网址,即:当我们在文本框中输入一个网址(如:http://www.g.cn/),点“确定”,则显示它最终跳转到的网址(http://www.google.cn/)(若该网页不会跳转,如:http://mp3.baidu.com/,则显示它目前的网址)。
该test.htm源文件如下:
请输入网址: <input type="text" name="t1" > <input value="确定" name="B1" type="botton" onclick=zh()> <br>
该网页最终地址: <input type="text" name="t2" >
<script language="javascript">
function zh()
{...
}
</script>
可惜我不知道function zh()这个javascript程序应该怎么写。特请求帮助!
我曾想过以下2种方案,但都无法实现!
方案1:
<script language="javascript">
function zh()
{var win = window.open(t1.value,"newwindow", "");
t2.value=win.location.href;
}
</script>
此方案的问题出在win.location.href。因为无论是javascript还是vbscript,都不允许跨域操作。但我的test.htm是在本机运行,不可能是输入的网址(如http://www.google.cn)在同一域名下。我在网上搜索了一些解决跨域的方法,并进行了尝试,但好象都无法提取win.location.href。
方案2:
<script language="javascript">
function zh()
{var url=t1.value;
var Http=new ActiveXObject("MSXML2.XMLHTTP");
Http.open("get",url,false);
Http.send() ;
t2.value=...;
}
</script>
此方案可以用Http.responseText提取任何一个网址(如http://www.google.cn)的源代码,但我却不知道用哪个函数提取该网页的网址。
请各位网有帮忙。您可以修正以上的2种方案,也可以提出您的方案。谢谢!
作者: abjb 发布时间: 2008-05-29
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28