博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
隐藏帧(一)
阅读量:5905 次
发布时间:2019-06-19

本文共 1047 字,大约阅读时间需要 3 分钟。

一、前言

       随着HTML帧的引入,隐藏帧(hidden frame)技术也应运而生了。该技术后面的基本想法是创建一个帧集,其中包含用于客户端—服务器通信的隐藏帧。可以通过将帧的宽度或高度设置为0像素来隐藏一个帧,以使其不显示。尽管一些早期的浏览器(诸如Netscape 4)不能够完全隐藏帧,经常会留下一些明显的帧边框,但该技术还是广泛地为开发人员所采用。

二、使用

网页分帧(Frame)通常用来进行主页版面的组织和编排,通过把帧的高度(对于上、下分帧)设为 0 的办法来把帧隐藏起来的,隐藏以后的帧里面照样可以放置 html 文件,但在网页的整体版面上并不显示出来。

隐藏帧的用法通常有2种:

  1. 保存内部变量的值。
  2. 在隐藏帧中放置音乐、图片等文件,后台下载,使得页面浏览比较流畅。

我们通常使用第一种用法。

 

三、隐藏帧技术的优点和缺点

  现在,你已经对使用隐藏帧所实现的强大功能有所了解了,我们将讨论它的实用性。正如前面所说的,该技术已经存在多年,并且仍然在许多Ajax应用中使用。
  使用隐藏帧的一个最大理由之一是它可以维护浏览器的历史,使用户仍然能够使用浏览器上的后退和前进按钮。浏览器由于并不知道隐藏帧实际上被隐藏了,但对于其所发出的请求仍然是记录在案的。然而,Ajax应用程序的主页面却没有修改,在隐藏帧中的修改意味着后退和前进按钮将依据该隐藏帧的访问历史而非主页面而变化。这也是为什么Gmail和
Maps仍然使用该技术的理由。
  注意,iframe并非一直会存储浏览器的历史记录。尽管IE始终会存储iframe的历史记录,但Firefox只对使用HTML定义(也就是不包括使用JavaScript动态创建)的iframe保存历史记录。Safari从不为iframe保存历史记录,不管它们是如何包含在该页面中的。
  隐藏帧技术不利的一面是,对其背后发生的事了解甚少。它完全依赖于返回的正确页面。本节的例子都存在相同的问题:如果隐藏帧的页面载入失败,并不会向用户提示出错消息;主页面将继续等待直到调用适当的JavaScript函数。必须通过设置一个较长周期(可能是5分钟)的超时时间,然后如果页面仍然没有成功载入则显示一条消息,以给用户一个安慰。但这一切都只是一个变通方法,最主要的问题是,对于后台发生的HTTP请求缺乏充足的信息。幸运的,我们还有其他选择。

转载于:https://www.cnblogs.com/java-zone/articles/2541559.html

你可能感兴趣的文章
LOCAL_WHOLE_STATIC_LIBRARIES与LOCAL_STATIC_LIBRARIES的区别
查看>>
Solid Edge如何估算零件的质量,重心等物理性质
查看>>
Megcup 2017 决赛第一题 规则
查看>>
oracle-网络
查看>>
Pig系统分析(8)-Pig可扩展性
查看>>
IA32 MMU paging初始化代码
查看>>
顶点着色器和片断着色器
查看>>
已知二叉树的中序序列为DBGEAFC,后序序列为DGEBFCA,给出相应的二叉树
查看>>
Mac 10.12高级防火墙pfctl教程收集(待实践)
查看>>
Web端口复用正向后门研究实现与防御
查看>>
Linux网络编程之聊天程序(TCP协议之select)
查看>>
Error reading field 'throttle_time_ms': java.nio.BufferUnderflowException
查看>>
nested exception is java.lang.NoClassDefFoundError: net/sf/cglib/proxy/CallbackFilter
查看>>
下一代Asp.net开发规范OWIN(2)—— Katana介绍以及使用
查看>>
temp
查看>>
mongodb06---索引
查看>>
获取请求真实ip
查看>>
理解Express express.static 和 __direname 及 __firename的含义
查看>>
[转]wcout输出中文却不显示出来
查看>>
微信小程序 - 单个题目
查看>>