当前位置: 首页 > 编程笔记 >

复杂的javascript窗口分帧解析

潘高洁
2023-03-14
本文向大家介绍复杂的javascript窗口分帧解析,包括了复杂的javascript窗口分帧解析的使用技巧和注意事项,需要的朋友参考一下

什么是窗口分帧?  

    窗口分帧就是把一个浏览器文档窗口分隔成多个窗口,每个窗口都可以显示一个独立的网页文件,每个帧(即页面)都有自己的url。

帧窗口该如何创建?

  帧通常是由<frameset>和<frame>标记创建的。但在HTML 4中,<iframe>标记也可以用来在文档中创建“内联帧”。就JavaScript来说,<iframe>创建的帧与<frameset>和<frame>创建的帧一样。

  在HTML中用<frameset>(分割窗口标记)来分割窗口,<frameset>在多窗口页面中的地位就相当 于<body>在普通单窗口页面中的地位,在页面中用<frameset>……</frameset>标志页面主体 部分的起止位置。而且,<frameset>标记决定了怎样划分窗口,以及每个窗口的位置和大小。其基本语法结构如下:

<frameset cols=n rows=n frameborder=yes|no border=n bordercolor=#n framespacing=n></frameset>

  cols和rows:是决定页面如何分割的两个参数。分割左右窗口用cols,各帧的左右宽度用占窗口宽度的百分比来表示。比 如:cols="30%,40%,*"就表示水平方向分割成三个窗口,各自所占总宽度的百分比依次是30%,40%和30%。其中"*"表示剩余部分,也 就是说"*"对应的小窗口宽度为剩余的宽度。分割上下窗口用rows,同样采用百分比的设定方法。

  frameborder:是指定各分窗口是(ye)否(no)要加边框;如果加过框的话,则用 border参数指定边框的宽度,bordercolor指定边框的颜色。

  framespacing:用于设定各分窗口之间的间隔大小,默认值是0。

  用<frameset>标记把窗口分割好后,各窗口的属性是用HTML的<frame>标记来定义的,所以<frameset>标记中必须包含<frame>标记,用以定义各分窗口的属性。其语法如下:

<frame align=left|center|right|top|bottomv name=framename src=url noresize scrolling=yes|on|auto frameborder=yes|no bordercolor=#n marginheight=n marginwidth=n></frame>

  align:设定分窗口的位置是靠左(left)、靠右(right)、居中(center)、靠上(top)还是靠底(bottom)。

  name:用于指定分窗口的名称,src则用于指定分窗口所对应的HTML页面地址。

  noresize:是对用户来说的,当<frame>标记中包含此参数的时候,用户就不能用鼠标调整修改各分窗口的大小。

  scrolling:设定分窗口是否要滚动条。scrolling=no时不要滚动条,scrolling=yes时表示要滚动条,scrolling=auoto时表示根据实际情况自动设置滚动条。

  frameborder和bordercolor:是设定分窗口有无边框和边框颜色的。但对象只限于用<frame>标记的分窗口。

  marginheight和marginwidth:分别用于设定分窗口的上下边缘和左右边缘的宽度。

  例如:

<frameset cols="50%,*,25%">
 <frame src="http://www.baidu.com" noresize="noresize" />
 <frame src="http://www.baidu.com" />
 <frame src="http://www.baidu.com" />
</frameset>

JavaScript中帧窗口之间的关系?
  一个窗口的任何帧可以通过top,framesparent属性来引用其他帧。

  任何窗口或帧中的JavaScript代码可以将自己的窗口和帧引用为 window 或 self。

  每个窗口都有frames属性。这个属性引用一个Window对象的数组,其中每个元素代表的是这个窗口中包含的帧(如果一个窗口没有任何帧,那么frames[]数组就是空的,frames.length为0).这样,窗口就可以使用frames[0]来引用它的第一个帧,使用frames[1]来引用第二个帧,一次类推。

  每个窗口还包含有一个parent属性,它引用包含这个窗口的Window对象。这样,窗口中的第一个帧就可以引用它的兄弟帧,即:

 parent.frames[1]

如果一个窗口是顶级窗口,而不是帧,那么parent属性引用的就是这个窗口本身:  

parent==self;

如果一个帧包含在另一个帧中,而后者又包含在顶级窗口中,那么该帧就可以使用parent.parent来引用顶级窗口。

注意事项:
分帧不能和body标签及内容体共存

分帧不利于搜索引擎优化,正常前台页面不建议使用分帧。

以上就是本文的全部内容,希望对大家学习javascript程序设计有所帮助。

 类似资料:
  • 问题内容: 假设您不希望其他网站将您的网站“框”为: 因此,您可以在所有页面中插入反框架,框架破坏JavaScript: 优秀的!现在,您可以自动“破坏”或突破包含iframe的任何内容。除了一个小问题。 事实证明,您的框架破坏代码可以被破坏如下所示 此代码执行以下操作: 每当浏览器尝试通过事件处理程序导航到当前页面之外时,都会增加一个计数器 设置一个计时器,通过触发每毫秒触发一次的计时器,如果看

  • 问题内容: 在Python中,您可以得到两个集合的交集: 有人知道这种相交()算法的复杂性吗? 编辑: 此外,有人知道Python集背后的数据结构是什么吗? 问题答案: 答案似乎是一个搜索引擎查询。您也可以使用此直接链接到python.org的“时间复杂性”页面。快速总结: 编辑:正如雷蒙德在下面指出的那样,“最坏情况”的情况不太可能发生。我最初将其包括在内是为了彻底,我将其留给下面的讨论提供背景

  • 我最近刚开始使用API和http请求,我正试图构建一个应用程序,使用Reddit API在特定的子编辑上拉帖子。 这是我正在练习的带有json和搜索参数的页面:https://www.reddit.com/r/hiphopheads.json?limit=1 查看Golang的JSON模块的标准库,我仍然不知道如何使用JSON。解组此复杂JSON。根据我收集到的信息,我必须定义一个类似于JSON结

  • 问题内容: 是否可以对JSON对象执行复杂的查询?我愿意接受JavaScript或jQuery解决方案,越轻松越好。我正在构想某种类似于LINQ或SQL的功能编程语言。 我不希望其他任何第三方库或附加组件。 更新 从早期答案的外观来看,将需要一个附加组件。在这种情况下,我更喜欢不需要安装过程的加载项。随软件发布一起部署的东西(如jQuery)很好(例如* .js文件集)。 问题答案: 签出:是否有

  • 如何查询具有复杂类型(如映射/数组)的RDD?例如,当我编写此测试代码时: 我认为语法应该是这样的: 或 但我明白了 无法访问类型MapType(StringType,StringType,true)中的嵌套字段 和 组织。阿帕奇。火花sql。催化剂错误。包$TreeNodeException:未解析的属性 分别地