为什么文件名会被地址栏中的JavaScript函数替换?

时间:2012-01-11 18:55:49

标签: javascript html browser web

本地html文件,让我们说它的路径是/path/to/file.html。在开始时有以下内容。

<html>

 <head>

  <link rel="shortcut icon" href="logo.ico"/>
  <LINK href="1.css" rel="stylesheet" type="text/css" />
  <script src="1.js" type="text/javascript"> </script>

 </head>

<body class = "body_background">
.
.
.

尝试使用完整路径在浏览器中打开它时:

文件名及其扩展名(file.html)将被JavaScript函数替换。

即。

  

文件:///path/to/file.html

更改为以下内容:文件名及其扩展名由 location 中的 1.js 替换。

  

file:/// path / to / function location(){ ...

JavaScript文件在开头就有了这个:

if(window.addEventListener) {

  window.addEventListener('load', location, false);

  }
else if (window.attachEvent) window.attachEvent('onload', location);

这发生在 FireFox Safari 上,而不是 Chrome 到。

Chrome 上,页面会正确显示。

  

此问题适合朋友。

1 个答案:

答案 0 :(得分:5)

location是某些JS实现中的保留字,如document.location

请参阅:http://www.javascripter.net/faq/reserved.htm