我正在尝试使用下面的代码获取IFrame内部HTML.
<iframe src="http://www.msn.com"
width="100%" height="100%" marginwidth="0"
scrolling="no" frameborder="0" id="divInfo"
onreadystatechange="MyFunction(this);"></iframe>
Run Code Online (Sandbox Code Playgroud)
JavaScript代码是
function MyFunction(frameObj)
{
if (frameObj.readyState == "complete")
{
alert(frameObj.document.body.innerHTML);
}
}
Run Code Online (Sandbox Code Playgroud)
但是警报显示了当前文档的html.当frmae就绪状态完成时,如何获得iframe的内部HTML.
如果我使用alert(frameObj.contentWindow.document.body.innerHTML);它给我访问被拒绝错误.
提前致谢.
我正在编写这个javascript,它将在几个其他域上使用,这些域调用一个php脚本(仅在我的域上)来返回一个数组.我正在使用xmlhttp,它在我的域上测试时效果很好,但是一旦从单独的域放置或调用javascript它就会完全中断.有人知道如何跨域提出此请求吗?
注意:我必须执行一个奇怪的小黑客,允许我进行两次单独的调用,并确保它们在处理之前都返回.无论如何,这在我的域名上每次都能完美运行.
这是调用我的PHP代码的javascript文件
function getUrls(){
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
xmlhttp2 = new XMLHttpRequest();
}
else {
// code for IE5 and IE6
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
// code for IE5 and IE6
xmlhttp2 = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function(){
if (xmlhttp.readyState == 4 && xmlhttp.status == 200 ) {
parsedJSONurls = JSON.parse(xmlhttp.responseText);
xmlhttp2.open("GET", "http://mydomain.com/connect.php?q=companies", true);
xmlhttp2.send();
}
}
xmlhttp2.onreadystatechange = function(){
if (xmlhttp2.readyState == 4 && xmlhttp2.status == …Run Code Online (Sandbox Code Playgroud) javascript php xmlhttprequest cross-domain same-origin-policy
显然修改它是不可能的.
但你会认为阅读它应该不是问题吗?
如果我在某人的系统上运行我的.js并且我想分析另一个URL的DOM,客户端,有没有办法做到这一点?
像拉标题标签或拉动网址一样简单......可能会将网站加载到iframe中来完成此操作?
我刚把自己的博客从wordpress改为django-zinnia.百日草在django-admin中使用WYMeditor(https://github.com/wymeditor/wymeditor)iframe进行博客文章和内容输入,现在由于同源问题我无法访问iframe.我在浏览器控制台中看到的错误是:
Blocked a frame with origin "http://www.mydomain.com" from accessing a frame with origin "http://mybucket.s3.amazonaws.com".
Protocols, domains, and ports must match.
WYMeditor.WymClassSafari.initIframe
onload
Run Code Online (Sandbox Code Playgroud)
我可以在我的CORS配置中为存储桶更新参数以允许iframe加载交叉源吗?我已经有了
<AllowedOrigin>http://www.mydomain.com</AllowedOrigin>
Run Code Online (Sandbox Code Playgroud)
在我目前的CORS规则中:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>http://mydomain.herokuapp.com</AllowedOrigin>
<AllowedOrigin>http://mydomain.com</AllowedOrigin>
<AllowedOrigin>http://www.mydomain.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Content-*</AllowedHeader>
<AllowedHeader>Host</AllowedHeader>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
Run Code Online (Sandbox Code Playgroud) django amazon-s3 cross-domain same-origin-policy amazon-web-services
我想从其他网站检索json数据,所以我尝试做一个简单的跨域请求.我在Wamp上运行了这个index.php文件:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" manifest="manifest.appcache">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>MySite</title>
<script type="text/javascript">
function getXDomainRequest() {
var xdr = null;
if (window.XDomainRequest) {
xdr = new XDomainRequest();
} else if (window.XMLHttpRequest) {
xdr = new XMLHttpRequest({mozSystem: true});
} else {
alert("Your browser does not support AJAX");
}
return xdr;
}
function sendData() {
var xdr = getXDomainRequest();
xdr.onload = function() {
alert(xdr.responseText);
}
xdr.open("GET", "http://example.com");
xdr.send();
}
</script>
</head>
<body>
<p>
<input …Run Code Online (Sandbox Code Playgroud) 我想创建一个用于Firefox工具栏的书签,prompt一旦点击就会打开一个JavaScript 窗口,并要求用户输入.
首先,这可能吗?
其次,如何将JS输入字段提交到特定的PHP页面进行处理?
谢谢
我想用Javascript 解析这个内容.数据如下所示:
{"ss":[["Thu","7:00","Final",,"BAL","19","ATL","20",,,"56808",,"PRE4","2015"],["Thu","7:00","Final",,"NO","10","GB","38",,,"56809",,"PRE4","2015"]]}
在线的每一个教程都教你如何使用Twitter解析JSON,但我不太确定如何使用JSON进行解析.
我想在一个网站上设置这个以查看NFL团队得分,以获得一个有趣的项目和一个关于解析JSON的良好学习经验,因为我不太关心Twitter的东西.
这可能吗?任何好的教程开始?甚至一些启动代码?
我需要将外部网页加载到 div 中。我不想使用 iFrame。我希望用简单的 Javascript 来完成此操作。我不知道该怎么做。
我有一个用户的两个静态页面,它们部署在他们的服务器上.目前我正在从代码后面调用他们的服务器并加载它们.但现在我不想在电话后面制作代码.相反,我想在iframe中加载这些静态页面.这些静态页面的链接(URL)存储在我的web.config中.在初始化调用期间使用C#我将这些URL复制到隐藏字段中并将它们分配给iframe的src,如下所示:
<script>
var bLoaded = false;
function LoadIframe1() {
if (!bLoaded) {
var iframe1 = document.getElemetById('iframe1');
if (typeof (iframe1) != 'undefined' && iframe1 != null) {
iframe1.src = hiddenfield.value;
bLoaded = true;
}
}
}
</script>
<iframe id="iframe1" onload="Loadframe1();" />
Run Code Online (Sandbox Code Playgroud)
现在问题是如果文件在项目的目录中,它工作正常.但是如何加载不在解决方案目录中的文件?
我正在尝试获取远程json数据,但我无法做到.我的临时解决方案是使用http://whateverorigin.org/,但它不再适合我.所以现在我回过头来试图找出为什么我无法用$ .getJSON以正常方式获取远程json.这是代码:
$.getJSON("http://www.catholic.com/api-radio/6431?callback=?", function(result){
//response data are now in the result variable
alert(result);
});
Run Code Online (Sandbox Code Playgroud)
这是jsfiddle: