`
mayijun000
  • 浏览: 66335 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

iframe页面布局、菜单、自定义高度

 
阅读更多

  最近用到iframe页面布局,解决了页面加载慢的问题,分成了上中下三层,结果遇到网上很多人遇到的问题。

 

  1、下拉菜单因为高度问题向上显示了,

于是我把它放在了外面,其余用iframe,就不会出现问题了。

  2、可是又遇到了

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 

 

 

它会自动添加默认样式,覆盖原有的样式。因为我写的iframe的自适应高度的方法用到了。方法如下

 

function reinitIframe(iframe){
 var bHeight = iframe.contentWindow.document.body.scrollHeight; var dHeight = iframe.contentWindow.document.documentElement.scrollHeight; 
//var blankHeight = iframe.contentDocument.body.scrollHeight; 
var height = Math.max(bHeight, dHeight);
 try{ 
iframe.height = bHeight; 
//iframe.height = blankHeight; //适应内部页面的大小 
}catch (ex){ 
alert(ex+">>>>>>>>>>>>>>error0000"); 
} 
} 

 

后来发现可以用另外的方式实现:

function reinitIframe(iframe){
		var win=iframe;
		var minheight = 200;
		if (document.getElementById){
				
		if (win && !window.opera){
				
	if (win.contentDocument && win.contentDocument.body.offsetHeight) 
							win.height = win.contentDocument.body.offsetHeight; 
				    
	else if(win.Document && win.Document.body.scrollHeight)
				   
							if(minheight<win.Document.body.scrollHeight){
								win.height = win.Document.body.scrollHeight;
							}else{
								win.height =minheight;
							}
	}

}
}

 

这样问题就解决了。

 

3、用了iframe之后,每次刷新页面都会跳转到首页,要是只刷新iframe就好了,于是写了下面的方法:

var check=function(e){ 

    e=e||window.event;  

    if((e.which||e.keyCode)==116){ 

       if(e.preventDefault){ 

           e.preventDefault(); 

           window.frames["mainFrame"].location.reload(); 

           } else{

              event.keyCode = 0; 

              e.returnValue=false; 

              window.frames["mainFrame"].location.reload(); 

              } } } 

if(document.addEventListener){ 

    document.addEventListener("keydown",check,false); 

    } else{ 

       document.attachEvent("onkeydown",check); 

       } ;

  

4、当有弹出框的时候,如果子页面调用父页面的方法,那么就调用

 

 

window.parent.document.mainFrame.user()//mainFrame父页面的iframe名称,user()父页面的方法 

 5、iframe局部跳转

window.frames[i].location.href=url//i表示第几个iframe

 

 

分享到:
评论

相关推荐

    ExtAspNet_v2.3.2_dll

    -增加示例(iframe/parent_postback_run3.aspx),如何通过简单的Javascript代码回发父页面(feedback:eroach)。 -修正一些书写错误(feedback:bmck)。 -从Region控件中删除SplitColor属性,增加CollapseMode, ...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -增加示例(iframe/parent_postback_run3.aspx),如何通过简单的Javascript代码回发父页面(feedback:eroach)。 -修正一些书写错误(feedback:bmck)。 -从Region控件中删除SplitColor属性,增加CollapseMode, ...

    C#开发经验技巧宝典

    0399 利用Table布局Web页面 223 0400 FrameSet框架的应用 224 0401 IFrame框架的应用 224 0402 页面尺寸自动适应1024×768像素和800×600分辨率 225 10.2 网页性能设计 225 0403 用meta标签来增强网页...

    python入门到高级全栈工程师培训 第3期 附课件代码

    03 基于BootStrap和FontAwesome制作页面 04 创建学生信息 05 删除学生信息 第57章 01 上节内容回顾 02 上节bug修复 03 编辑学生信息之前端功能 04 编辑学生信息之后台处理 05 以上内容总结 06 Ajax功能之dataType...

    我记录网站综合系统 v1.0.zip

    √iframe某些时候会缓存上一个页面 √非聚合区块,设置显示数量 √游客状态发表论坛主题不能转向登录界面 √在线列表,同一个会员不再显示两次,以最后活跃记录为准,过期用户删除 √IE6下 png图片透明问题 √...

    亚马逊机械土耳其工具「Tools for Amazon's Mechanical Turk」-crx插件

    ✫自定义全屏设置,包括任务窗口的高度,宽度和垂直偏移 ✫设置为始终选中“自动接受下一个HIT”复选框 ✫“打开并接受”按钮可快速打开最多25个选项卡(新功能!)✫按钮可关闭所有打开的选项卡和窗口中的“自动...

    最新Python3.5零基础+高级+完整项目(28周全)培训视频学习资料

    CSS内容补充以及后台管理页面布局 后台管理页面布局 JavaScript内容回顾 JavaScript函数 JavaScript序列化及转义 开小差之自动登录抽屉并点赞 eval以及时间操作 JavaScript作用域 JavaScript面向对象及原型 Dom选择...

    HisiPHP开源框架-PHP

    修复在PHP7.4下报错- 修复一处书写错误- 修复某些场景下select下拉内容被ueditor编辑器遮挡- 调整表单提交时自定义回调函数的顺序- 优化软删除- 修复开启手机网站后,小程序访问返回异常- 优化iframe模式下,...

    C#编程经验技巧宝典

    6 &lt;br&gt;0014 如何锁定窗体中的控件 6 &lt;br&gt;0015 统一窗体中控件的字体设置 7 &lt;br&gt;0016 通过“格式”菜单布局窗体 7 &lt;br&gt;0017 起始页中的“Visual Studio开发人员新闻” 7 &lt;br&gt;1.3 MSDN帮助的...

Global site tag (gtag.js) - Google Analytics