Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何获取框架的url?_Html_Url_Frames - Fatal编程技术网

Html 如何获取框架的url?

Html 如何获取框架的url?,html,url,frames,Html,Url,Frames,以前有人问过这个问题,但在解决到一定程度后,答案并没有解决我面临的问题: 我有一个简单的HTML页面,有两个框架,在左边我打开了一些URL,在右边我有文本输入框,我需要点击这里来获取在左边框架中打开的文档的当前URL。以下是我的文本框代码: <input type="TEXT" name="proz" onClick=value=top.left_frame_name.location.href> 问题是,当我在左框中打开一个本地文件时,它就可以工作了 file:///C:/D

以前有人问过这个问题,但在解决到一定程度后,答案并没有解决我面临的问题:

我有一个简单的HTML页面,有两个框架,在左边我打开了一些URL,在右边我有文本输入框,我需要点击这里来获取在左边框架中打开的文档的当前URL。以下是我的文本框代码:

<input type="TEXT" name="proz" onClick=value=top.left_frame_name.location.href>

问题是,当我在左框中打开一个本地文件时,它就可以工作了 file:///C:/Documents%20and%20Settings/Mihailo/My%20Documents/furniture/dnevnaI.htm 当我点击文本框时, 但是如果我打开一些外部链接http://... 在左框中,单击右框中的文本框不会在框中生成任何内容,但会在浏览器中生成消息(错误:权限被拒绝)

该应用程序是一个愿望列表页面,左边的用户正在打开另一个域的产品页面,右边的我的页面上有一个表单,其中有几个文本框,我希望用户在框中单击以记住所选产品的URL,最后能够将他们的选择发送给我。

你不能这样做

不过,您可以使用
postMessage
与框架进行通信,但您需要更改与之“交谈”的页面的来源;)

我能想到的解决这个问题的最好方法是创建一个bookmarklet,它将信息发送到您的页面

它可以是这样的:

javascript:(function(i){i.src='http://yoursite.com/post.jpg?page='+encodeURIComponent(document.location.href)+'&time='+(+new Date);i.onload=function(){ alert('ok, keep going') }})(new Image)
使用映像将允许发送跨域消息。只需让用户将带有此代码的链接拖到他的书签中,然后在每个页面上单击即可


或者只是为浏览器制作一个插件

如果框架不在同一个域中,则无法访问该框架。您使用右侧的iframe有什么特殊原因吗?如果你只需要显示一些DOM元素,比如文本框,为什么不直接使用div呢?@comfrek:那么就没有办法从另一个域获取文档的URL了?@Blaise:我从来没有说过我使用iframe,我是上世纪90年代的一个天真的HTML程序员,那时iframe还不存在。如何在非我的域的文档中使用div?我将在上面进一步解释我试图编写的应用程序需要做什么。@user2824969这是正确的,没有办法。您只能获取通过HTML或JS分配的第一个URI,但无法通过单击链接确定用户浏览的站点。