JavaScript从任意URL的HTML内部获取一些信息
JavaScript to get some information from inside the HTML at an arbitrary URL?
对不起,我不知道通过关键字查找的正确术语…
因此,作为一个简单的新手练习,我尝试创建一个文件"test.html"(就在我的桌面上),这样当我在浏览器中加载它并单击页面上出现的按钮时,维基百科主页上的文章计数将出现在按钮下的页面上。
有人告诉我尝试使用iframe,我想到了这个:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript"">
function get_count(){
var articlecount = document.getElementById("wiki_page").contentWindow.document.getElementById("articlecount").getElementsByTagName("a")[0].innerHTML;
document.getElementById("put_number_here").innerHTML = articlecount;
}
</script>
</head>
<body>
<iframe id="wiki_page" style="display:none" src="http://en.wikipedia.org/wiki/Main_Page"></iframe>
<input type="button" onclick="get_count()" />
<p id="put_number_here"><p>
</body>
</html>
它不起作用,当我在记事本上测试时(使用Firefox 17),我得到了这个:
var x = document.getElementById("wiki_page").contentWindow.document.getElementById("articlecount").getElementsByTagName("a")[0].innerHTML;
alert(x);
/*
Exception: Permission denied to access property 'document'
@Scratchpad:10
*/
(和alert(document.getElementById("articlecount").getElementsByTagName("a")[0].innerHTML);
工作完美的http://en.wikipedia.org/wiki/Main_Page
直接,所以我知道这不是问题。将维基百科主页的源代码复制到一个新文件"test2.html",并将其设置为iframe的src,这也有效。
我只是想用完全错误的方式来做这件事吗?
你不能访问iFrame内的任何元素,除非iFrame引用了相同的域。
对于相同的域调用,使用此链接作为参考:
从iframe中调用父窗口函数
为不同的域名,用户此链接供参考:
我如何实现跨域URL访问从一个Iframe使用Javascript?脚本
你可以使用:
window.frames["wiki_page"]
然后你可以使用
在DOM中引用该元素:window.frames["wiki_page"].document.getElementById ("articlecount");
你可以试试:
var targetFrame = window.frames["wiki_page"];
targetFrame.document.getElementById("IDOfSomething");
确保您的iframe仍然命名为wiki_page等
相关文章:
- 从脚本中的动态(javascript)网页获取信息
- 在弹出窗口中获取信息
- 谷歌地图API-获取信息窗口打开时,点击一个圆圈
- 如何创建一个脚本,该脚本给定网站列表,它使用其搜索功能来获取信息
- 使用 JS 和 PHP 从数据库中获取信息
- 你如何从 iframe 获取信息?(JavaScript和/或Python)
- 当用户与谷歌地图交互时,如何从中获取信息
- Twitter引导模式-从iframe中获取信息并填充在主页上
- 在PhoneGap Build中从Facebook获取信息
- 使用Web服务根据对另一个下拉框的选择填充第二个下拉框以获取信息
- 从生成的子进程中获取信息的最佳方法
- 在调用方法来填充详细信息网格之前,如何从填充的下拉列表中获取信息
-
- 下拉菜单使用 Javascript 获取信息
- Javascript 从 id 获取信息
- 如何对调用服务器的 JavaScript 文件进行外部接口调用以获取信息
- 当互联网连接丢失时,如何从 Ajax 调用中获取信息
- 使用 jQuery 从不同域的 iframe 获取信息
- 从 JSON 对象的内部深度获取信息
- 如何从控制台获取信息
- 如何从其他网站获取信息