2010-07-21 110 views
0

是否有可能使用javascript在Web浏览器中打开网页的地址?检查在浏览器中打开的网页地址

可以说,在执行一些操作之前,我需要检查浏览器中是否打开特定页面。 Javascript的window.open()对我来说似乎是错误的,因为即使页面之前被加载,它也会打开窗口。

编辑: 我需要检查,如果特定的页面在浏览器中的任何选项卡中加载,如果是,我需要这个页面

+0

你问关于其他标签/浏览器实例,或只是当前的文档位置是什么? – 2010-07-21 18:08:26

+0

检查窗口的相同页面是否真正用javascript打开窗口? – 2010-07-21 18:09:04

回答

2

你的意思是你要检查他们是否有在执行某些操作另一个窗口/选项卡打开一些页面?如果是这样,那么不,这是不可能的,因为这将是一个重大的安全问题。

1

如果您是指当前窗口,则通过DOM访问document.URL将返回您想要的内容。如果您的意思是其他选项卡/实例,如上所述,否(除非您正在浏览器插件中工作)。

0

如果您只打开域中的页面,则可以使用cookie来跟踪打开的页面。如果不是,那么其他人说不,你不能。

1

如果这是内部使用,您可以开发浏览器扩展,或者更简单,请参阅Firefox的Jetpack。你可以很容易地访问每个标签与后者。
任何希望使用脚本的人都必须安装Jetpack扩展,访问您的网页进行下载并接受它提供的自动安装。

1

我想补充到“否”名单,但有一个有趣的例外:

如果您需要检查一些特定的页面是有史以来由用户加载(更具体地说,如果它仍然在浏览器的历史),那么你可以做以下事情:

<style> 
    a:visited { color: #00ff00 } 
    a.check-facebook { display: none } 
</style> 

<a class="check-facebook" href="http://www.facebook.com"></a> 

<script> 
    if (jQuery('.check-facebook').css('color') == 'rgb(0, 255, 0)') { 
     alert('The person has visited http://www.facebook.com'); 
    } else { 
     alert('Facebook homepage is not in the history of the browser') 
    } 
</script> 
相关问题