js中 frame的主窗口和子窗口之间的传值和方法调用


一:html页面中iframe嵌套页面的父页面和子页面js方法互相调用

一个布局div里嵌入左右两个frame

  <div >

<div id="left">
<iframe id="leftFrame" src="/index/highframe.html" width="100%"
height="100%" name="high" frameborder="0"></iframe>
</div>
<div id="right">
<iframe id="rightFrame" src="/index/lowframe.html" width="100%"
height="100%" name="low" frameborder="0"></iframe>
</div>
</div>



1.主页面调用iframe中的函数方法:document.getElementById("leftFrame").contentWindow.函数名();

或者  window.frames("leftFrame").contentWindow.函数名()

或者 用jquery:window.$("#leftFrame")[0].contentWindow.函数名()


2.iframe调用主页main的函数方法:parent.函数名();or window.parent.函数名()/变量;


3.同级iframe页面之间调用,需要先得到父亲的window,然后调用同级的iframe得到window进行操作;

     parent.$("#leftFrame")[0].contentWindow.函数名()/变量;


二:js格式化时间

//格式化时间
function dateFormat(oDate, fmt) {
var o = {
"M+": oDate.getMonth() + 1, //月份
"d+": oDate.getDate(), //日
"h+": oDate.getHours(), //小时
"m+": oDate.getMinutes(), //分
"s+": oDate.getSeconds(), //秒
"q+": Math.floor((oDate.getMonth() + 3) / 3), //季度
"S": oDate.getMilliseconds()//毫秒
};
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (oDate.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for (var k in o) {
if (new RegExp("(" + k + ")").test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
}
}
return fmt;
}

调用:

var date=dateFormat(new Date(), "yyyy-MM-dd HH:mm:ss"); //yyyy-MM-dd


三:自定义URL Protocol 协议,web调用网页调用本地应用程序.exe文件,兼容各个浏览器的方法

 
一些应用软件可以在浏览器中点击一个url后自动启动,并执行操作。看了很多博客也总结了下。通过网站调用可执行程序,主要是修改注册表,注册 URL Protocol 协议。


window+r快捷键,输入 regedit 打开注册表

在注册表 左边最上面HKEY_CLASSES_ROOT那个树右键新建——项




双击名称可以修改数据里面的内容,右键可以新建字符串值

在defaulticon和command 的默认项填写exe的路径,这里用爱奇艺万能播放器测试一下,这样注册表部分就完成了。


注意到上面 command 项的值也可以为 C:\software\IQIYI Video\GeePlayer\3.0.40.3591\GeePlayer.exe "%1" 

这个"%1"是传递给 updater.exe的参数。
加了后使用是我们就可以传参数了,

  <a href="Uaiqiy://cid:110&username:mjq">


新建一个html文件


<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  </head>
    <body>
        <div>
            <a href="Uaiqiy://">
           open exe
            </a>
        </div>
    </body>
</html>


在网页上直接一个超链接地址,协议://参数就可以了。这样在网页上点击就可以调用本地的exe文件了。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值