要传参数的页面

引用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. 织梦DedeCMS模板防盗的四种方法

    织梦(DedeCMS)模板也是一种财富,不想自己辛辛苦苦做的模板被盗用,在互联网上出现一些和自己一模一样的网站,就需要做好模板防盗.本文是No牛收集整理自网络,不过网上的版本都没有提供 Nginx 3 ...

  2. 2-kvm创建快照以及网卡绑定

    kvm创建快照以及网卡绑定 创建node1 查看node1 进入到kvm的配置文件里 将rhcs文件复制一份取名为node1.xml 通过这个命令随机生成一个uuid 然后就进入node1.xml里修 ...

  3. HTML 学习笔记 JavaScript(call方法详解)

    http://www.cnblogs.com/f-dream/p/4950918.html

  4. [LeetCode] Kth Smallest Element in a Sorted Matrix 有序矩阵中第K小的元素

    Given a n x n matrix where each of the rows and columns are sorted in ascending order, find the kth ...

  5. Android开发之扫描二维码开发

    原贴地址:http://www.cnblogs.com/Fndroid/p/5540688.html 二维码其实有很多种,但是我们常见的微信使用的是一种叫做QRCode的二维码,像下面这样的,可以放心 ...

  6. Gone Fishing POJ 1042

    #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> us ...

  7. ubuntu系统虚拟机下共享文件夹

    一般情况 1.安装: sudo apt-get install open-vm-dkms     2.挂载: sudo mount -t vmhgfs .host:/ /mnt/hgfs 用以上命令安 ...

  8. MySQL练习题参考答案

    MySQL练习题参考答案 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 思路: 获取所有有生物课程的人(学号,成绩) - 临时表 获取所有有物理课程的人(学号,成绩) - 临时表 根据[ ...

  9. C#笔记

    关键字: 1.internal 被 internal 修饰的东西只能在本程序集(当前项目)内被使用. 注意事项: 1.解决c#代码引用c/c++代码出现的unsafe code错误警告提示 Unsaf ...

  10. android studio 提示翻译

    1. you can import your settings from a previous version of Studio可以导入您的设置从先前版本的工作室 2. I want to impo ...