php 获取二级域名,主域页面发起ajax请求获取二级域名页面内容

需求:主域页面(https://www.temp.org/test.html)发起ajax请求获取二级域名页面(https://test.temp.org/test2.html)内容

初始错误做法:

$.ajax({

type:"post",

url:"https://test.temp.org/test2.html",

success:function(data){

var temp=$(data).find(".focus_news");

$(temp).appendTo('.txt')

}

})​

错误原因解析:

​主域页面(https://www.temp.org/test.html)发起ajax请求获取二级域名页面(https://test.temp.org/test2.html)内容,也因受到同源策略(Same Origin Policy)的限制,无法正常使用ajax请求!

解决方法:

主域名及二级域名页面都加上document.domain = 'temp.org';使俩文档web服务器的主机名一致,再用"创建一iframe标签引入二级域名页面,再读取该iframe页面对应标签内容"的方法代替之前的ajax请求

具体完整代码:

document.domain = 'temp.org';

var ifr = document.createElement('iframe');

ifr.src = 'https://test.temp.org/test2.html';

$(ifr).appendTo("body").hide();

ifr.onload = function(){

// contentDocument: 标准写法,用于获取iframe页面document对象,但ie7不支持

// contentWindow.document:非标准写法,但各浏览器都兼容,.contentWindow获取的是window对象,固还要加.document以获取iframe页面document对象

var doc = ifr.contentDocument || ifr.contentWindow.document;

// alert(doc);

var temp=$(doc).contents().find(".notice");//jq1.9前必须加.contents()(该方法常用于iframe页面内容的引用),加了contents()方法,ie7下才能获取iframe页面的内容!

$(temp).appendTo('.txt');

};

注释部分是用法解析,是重点!!

请按各自需要,自行挖掘代码精粹部分,呵.。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值