JS备忘--子父页面获取元素属性、显示时间,iframe之间互相调用函数
//页面加载完成后执行
$(function () { getHW();});
//当用户改变浏览器大小改变时触发
$(window).resize(function () { setHW(); });
//每500毫秒运行一次
window.setInterval("getH()", 500); //获取页面的高度,并传给父页面的元素
function getSubPageH() {
var parentWorkDiv = $("#workDiv", parent.document);//工作区DIV
var parentLeftDiv = $("#leftDiv", parent.document); //左侧菜单DIV
var parentTopDiv = $("#topDiv", parent.document);//顶部DIV
var parentBotDiv = $("#bottomDiv", parent.document);//底部DIV
var parentMidDiv = $("#middleDiv", parent.document); //中间DIV var thisBody = $("body");//本页面
var parentHeight = $("body", parent.document).height(); //父页面可用高度
var parentWidth = $("body", parent.document).width(); //父页面可用宽度
if ((thisBody.height() < parentHeight) && (parentLeftDiv.height() < parentHeight)) {
parentMidDiv.height(parentHeight - parentTopDiv.height() - parentBotDiv.height());
}
else {
if (thisBody.height() > parentLeftDiv.height()) {
parentMidDiv.height(thisBody.height());
}
else {
parentMidDiv.height(parentLeftDiv.height());
}
}
parentWorkDiv.width(parentWidth - parentLeftDiv.width());//设置宽度 // alert(parentMidDiv.height() + "-" + parentHeight); } //设置页面工作区域的宽度
function setHW() {
var leftDiv = $("#leftDiv");
var workDiv = $("#workDiv");
//获取浏览器的宽度
var htmlWidth = $(document).width();
var w = htmlWidth - leftDiv.width(); workDiv.width(w);
} //显示当前时间
function showTime() {
//获取当前日期
var dateTime = new Date();
var dateStr;
//定义星期
var week = "星期";
var dayWeek = new Array("日", "一", "二", "三", "四", "五", "六");
week += dayWeek[dateTime.getDay() + 1];
//年
dateStr = dateTime.getFullYear() + "年";
//月
if (dateTime.getMonth() < 10) {
dateStr += "0";
}
dateStr += (dateTime.getMonth() + 1) + "月";
//日
if (dateTime.getDate() < 10) {
dateStr += "0";
}
dateStr += dateTime.getDate() + "日 " + week + " ";
//时
if (dateTime.getHours() < 10) {
dateStr += "0";
}
dateStr += dateTime.getHours() + ":";
//分
if (dateTime.getMinutes() < 10) {
dateStr += "0";
}
dateStr += dateTime.getMinutes() + ":";
//秒
if (dateTime.getSeconds() < 10) {
dateStr += "0";
}
dateStr += dateTime.getSeconds(); document.getElementById("lblTime").innerHTML = dateStr;
}
第一、在iframe中查找父页面元素的方法:
$('#id', window.parent.document)
第二、在父页面中获取iframe中的元素方法:
$(this).contents().find("#suggestBox")
第三、在iframe中调用父页面中定义的方法和变量:
parent.method
parent.value
第四、父页面调用iframe内的JS的方法,无须给iframe加id,只需用Jq选中iframe就行了
$("#id").find("iframe")[0].contentWindow.func()
self.opener
opener代表打开本窗口的窗口
同一个父页面中,不同iframe之间互相调用函数
var frames = window.parent.window.document.getElementById("main");//根据ID获取目标iframe
frames.contentWindow.myfun();//调用函数myfun()
JS备忘--子父页面获取元素属性、显示时间,iframe之间互相调用函数的更多相关文章
- js+jquery动态设置/添加/删除/获取元素属性的两种方法集锦对照(动态onclick属性设置+动态title设置)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html140 ...
- js 在iframe子页面获取父页面元素,或在父页面 获取iframe子页面的元素的几种方式
用JS或jquery访问页面内的iframe,兼容IE/FF 注意:框架内的页面是不能跨域的! 假设有两个页面,在相同域下. index.html 文件内含有一个iframe: XML/HTML代码 ...
- iframe父页面和子页面获取元素和js变量
父页面获取iframe页面元素和变量 获取方法:$("#id")[0].contentWindow.showInfo(): 获取元素: $("#id").co ...
- javascript获取iframe框架中页面document对象,获取子页面里面的内容,iframe获取父页面的元素,
javascript获取iframe框架中,加载的页面document对象 因为浏览器安全限制,对跨域访问的页面,其document对象无法读取.设置属性 function getDocument(i ...
- iframe父页面获取iframe子页面的元素 与 iframe子页面获取父页面元素
一.在iframe子页面获取父页面元素代码如下:$('#objld', parent.document); 二.在父页面获取iframe子页面的元素代码如下:$("#objid", ...
- 使用iframe父页面调用子页面和子页面调用父页面的元素与方法
在实际的项目开发中,iframe框架经常使用,主要用于引入其他的页面.下面主要介绍一下使用iframe引入其他页面后,父页面如何调用子页面的方法和元素以及子页面如何调用父页面的方法和元素. 1.父页面 ...
- js弹框怎么获得父页面的元素
js获取父页面的元素可以用$(window.parent.document).find("#customer_id").val();这里的customer_id表示父页面某一个元素 ...
- JavaScript从父页面获取子页面的值(子页面又如何访问父页面)
之前还真没做过类似的东西,,top页面获取子页面的document.. 在百度搜了下即找到这个东东,还好,能用. 主要就是使用 contentWindow方法,获取子页面的所有document,再做处 ...
- 在iframe中获取父页面的元素
a.html <!DOCTYPE html> <html> <head> <title></title> </head> < ...
随机推荐
- C#操作电脑多显示器设置
电脑多显示器设置 第一种方式 通过使用api函数SetDisplayConfig来设置.这种方式在某些电脑中设置有几率会导致电脑黑屏 使用代码如下: private const uint SDC_AP ...
- 源码编译Redis Desktop Manager | 懒人屋
原文:源码编译Redis Desktop Manager | 懒人屋 源码编译Redis Desktop Manager 2.3k 字 10 分钟 2019-10-10 文章背景 本 ...
- django的模板的继承与导入
1.模板继承 母版中需要继承的地方: {% block content %} {% endblock %} 对应的子版中文件最开头写: {% extends 'head_demo.html' %} 然 ...
- ThinkPHP5微信支付扩展库(超级简单, 超级超好用!)
ThinkPHP5微信支付最新扩展库(2017年9月24日). 我的想法很简单,就是只需要调用一个静态方法就可以完成支付,查询,退款,查账等等, 无需重复造轮子, 专注自己业务!欢迎到Github查看 ...
- SpringBoot自定义配置步骤
1. 在yml中填写自定义配置 ly: sms: accessKeyId: # 短信配置 accessKeySecret: signName: xx商城 # 签名名称 verifyCodeTempla ...
- Vue-Quill-Editor 富文本编辑器
通俗来说:富文本,就是比较丰富的文本编辑器.普通的框只能输入文字,而富文本还能给文字加颜色样式等. 富文本编辑器有很多,例如:KindEditor.Ueditor.但并不原生支持vue 但是我们今天要 ...
- pandas的数据统计函数
# 1汇总类统计 # 2唯一去重和按值计数 # 3 相关系数和协方差 import pandas as pd # 0 读取csv数据 df = pd.read_csv("beijing_ti ...
- 基本数据类型、包装类、String类型之间的相互转换
@Testpublic void test2(){//基本数据类型.包装类-->到String类型的转换,调用String类型的静态方法valueOf()即可int i1 = 12;String ...
- SpringBoot整合表单验证注解@Validated,以及分组验证
首先引入jar包 <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate ...
- Python---进阶---函数式编程---lambda
一. 利用map()函数,把用户输入的不规范的英文,变成首字母大写,其他小写的规范的名字:比如说["ADMAm", "LISA", "JACK&quo ...