要传参数的页面

引用cross_domain.js  这个是另外一个工程(m)的地址

<script type="text/javascript" src="http://localhost:8080/m/cross_domain.js"></script>

在这里我是通过点击事件,,传值过去   跳转①

 function goToCm(obj){
var appid = $(obj).attr("appid");
var name = $(obj).attr("_name");
var _url = $(obj).attr("_url");
var url = "name="+name+"@"+_url +"@"+ appid; //在这里通过@来截取
reloadSmartFrame(url); -----这里调用m工程的方法
}

①   这里是m工程的js     cross_domain.js

window.onload = function() {
var smartFrame = document.createElement("iframe");
smartFrame.setAttribute("id", "smartFrame");
smartFrame.setAttribute("style", "display: none");
var body = document.getElementsByTagName("body")[0];
body.appendChild(smartFrame);
document.getElementById('smartFrame').src = "http://www.smart.com:8080/cm/cross_domain.jsp";
} function reloadSmartFrame(url) { --进来执行这方法(方法的前提是在页面中添加一个iframe)
document.getElementById('smartFrame').src = "http://www.smart.com:8080/cm/cross_domain.jsp?"+url;
}

cross_domain.jsp

<script type="text/javascript"> decodeURI(decodeURI())转乱码  ---中文过来,出现乱码             ---abc  ①  @ df ②  @ fg    ③
window.onload = function(){
var text = decodeURI(decodeURI(window.location.href)).split('=')[1]; --拿到第一个等号 【1】 1代表=号后面的值
var textName = decodeURI(decodeURI(text.split('@')[0])); --同理,,,第一个@前面的值①
var textUrl = decodeURI(decodeURI(text.split('@')[1]));    --第一个@后面的值②
var textAppId = decodeURI(decodeURI(text.split('@')[2])); ③
parent.parent.crossdomainCallback(textName, textUrl, textAppId); parent.parent 子页面找老爸的老爸的这个方法
}
</script>

最后页面的js

 function crossdomainCallback(textName, textUrl, textAppId) {
/*11-2页签增加样式*/
var appid = textAppId, src_link = textUrl, mc_link = textName, app_xl = "xl";
var xn = '#wrap_' + appid, label_id = '#' + appid;
console.info("1"+ textAppId);
console.info("2"+ textUrl);
console.info("3"+ textName);
$("body").removeClass("qping_work");
$("body").attr("style", "overflow:hidden");
if ($(xn).size() == 0) {
$('#wrap_gzt').after(
'<div class="container" id="wrap_' + appid + '">' +
'<iframe class="main_iframe yc" width="100%" frameborder="0" height="100%" scrolling="yes"
onreadystatechange="stateChangeIE(this)" onload="stateChangeFirefox(this)" name="' + appid + '_callframe" src="' + src_link + '">' +
'</iframe>' +
'</div>'
);
$(".mask").show();
$(".progress.progress-striped.active.ex").show();
} else {
$(xn).find("iframe").removeClass("yc"); $(".mask").hide();
$(".progress.progress-striped.active.ex").hide();
} $(xn).siblings(".container").addClass("yc_div");
$(xn).removeClass("yc_div"); if ($(label_id).size() == 0) {
$("#headAdd").before(
'<label class="ui-item ui-tab-item J_menuTab" id=' + appid + '>' +
'<div lang=' + src_link + ' appid=' + appid + ' app_xl=' + app_xl + '>' + mc_link + '</div>' +
'<i class="menu-remove"></i></label>'
);
}
$(".work_ico").parent().removeClass("ui-tab-item-selected");
$(label_id).addClass("ui-tab-item-selected cjxz").siblings("label.ui-item").removeClass("ui-tab-item-selected cjxz"); /*11-2页签增加样式*/
}

cross_domain的更多相关文章

  1. JS 跨域问题常见的五种解决方式

    一.什么是跨域? 要理解跨域问题,就先理解好概念.跨域问题是由于javascript语言安全限制中的同源策略造成的. 简单来说,同源策略是指一段脚本只能读取来自同一来源的窗口和文档的属性,这里的同一来 ...

  2. 微博爬虫“免登录”技巧详解及 Java 实现(业余草的博客)

    一.微博一定要登录才能抓取? 目前,对于微博的爬虫,大部分是基于模拟微博账号登录的方式实现的,这种方式如果真的运营起来,实际上是一件非常头疼痛苦的事,你可能每天都过得提心吊胆,生怕新浪爸爸把你的那些账 ...

  3. Ajax 的几种方法应用

    一,js实现ajax异步请求,简单例子 try.jsp <%@ page language="java" import="java.util.*" pag ...

随机推荐

  1. T-SQL 查询XML

    我们经常在SQL Server列中存一些XML来作为配置文件或者是保存特殊信息,那么如何将其展开并查询它或将其呈现为关系数据? 其实在T-SQL 下可以很容易的实现. 示例xml <catalo ...

  2. 2-sql基本操作

    sql基本操作 一.Sqlplus常用命令 1.查看oracle数据库的进程 2.查看oracle数据库运行状态 3.显示实例名(数据库名) 4.用sys账户登陆到数据库 5.解锁账户scott,并登 ...

  3. Hibernate入门学习-安装hibernate插件

    最近一直在学习ssh框架,为了更方便hibernate的使用,所以在eclipse下载hibernate插件,安装插件有两种方法 第一种:本地安装 1).插件的官网下载地址:http://tools. ...

  4. 使用jenkins配置.net mvc网站进行持续集成三

    前两篇讲解了Jenkins的配置和VS远程发布,现在还有一个问题,VS项目远程发布的时候,配置的是覆盖所有文件重生成的,而通常类似于配置文件这种东西,在本地开发环境和测试环境是不一样的.所以我们通常需 ...

  5. JSONP是如何工作的

    我对这个问题的探究来源于一个需求: 当访问某个页面的时候,需要向另外一个网站报告一下这次访问的信息. 其实发一个跨域的请求就能大致实现这个需求.我们发跨域的例子其实很常见,例如请求一个第三方的图片.引 ...

  6. redux-observable笔记

    欢迎指导与讨论:) 前言 本文不涉及深入的知识,只是在概念层面和一个简单的例子解释redux-observable的工作原理. redux-observable,是redux的一个中间件库.它能够自动 ...

  7. 简单的浏览器调试——console命令

    一.显示信息 <script type="text/javascript"> console.log('hello'); console.info('信息'); con ...

  8. VehicleCamera解读

    坐标系: z-axis ^ | | y-axis | / | / |/ +----------------> x-axis 围绕Z轴旋转叫做偏航角,Yaw:围绕X轴旋转叫做 俯仰角,Pitch: ...

  9. JSONP跨域操作

    JSP <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3. ...

  10. cosbench 压测RGW生产环境

    配置信息: 使用  2个万兆网卡的RGW主机,并用OSPF做高可用和负载均衡.  Ceph OSD集群 有21Node (万兆网卡+ 12个4T SATA机械硬盘) 测试VM配置: 使用在使用VXLA ...