由于最近需要维护一个老项目不得不去学习一些自己都没接触过的项目,老项目中虽然技术已经被淘汰,但是思想还是值得去学习探究的,无论是jsp,freemarker,freemarker这些模板引擎还是Vue的组件化,这些东西变化的是技术,但是不变的是思想,学习老项目中的代码有时候会有一种豁然开朗的感觉,帮助我们的认知。

比如从我接触的一个项目对window.frames["id"].location的使用就可以简单的实现一个页面布局。预览效果http://chsoul.gitee.io/test/iframe/Layout.html

页面布局Layout.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.content {
margin: 0;
padding: 0;
} .content-menu {
width: 20%;
height: calc(100vh);
float: left;
background: #304156;
box-sizing: border-box;
} .content-center {
width: 80%;
height: calc(100vh);
background: aliceblue;
box-sizing: border-box;
float: left;
} ul {
margin: 0;
padding: 0;
list-style: none;
} ul li {
color: white;
font-weight: 500;
height: calc(10vh);
line-height: calc(10vh);
padding: 0 10%;
cursor: pointer;
font-size: 25px;
}
ul li:hover{
background: burlywood;
color: black;
}
</style>
</head>
<body>
<div class="content">
<div class="content-menu">
<ul>
<li url="http://www.baidu.com/">百度</li>
<li url="https://www.aliyun.com/">阿里巴巴</li>
<li url="https://www.bilibili.com/">哔哩哔哩</li>
</ul>
</div>
<div class="content-center">
<iframe name="center" frameborder="0" width="100%" height="100%" id="center" src="./empty.html"></iframe>
</div>
</div>
<script>
window.onload = function () {
let tags = document.getElementsByTagName("li");
for(let tag of tags){
tag.onclick = function(){
window.frames['center'].location = this.attributes['url'].value
}
}
}
</script>
</body>
</html>

空白容器页面empty.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<body>
</body>
</html>

就可以实现一个简单的布局。

window.frames["id"].location使用的更多相关文章

  1. javascript宿主对象之window.frames

    window.frames属性是当前页面所有框架的集合.要注意的事,这里并没有frame和iframe做出区分.而且,无论页面存不存在框架,window.frames属性总是存在的,并总是指向wind ...

  2. window.frames

    // 点击事件 function zTreeOnClick(event, treeId, treeNode) { id = treeNode.id; window.frames["treeF ...

  3. window.frames[]在Firefox下无法兼容的解决方式

    html代码段: <iframe id="fr" src="ProjectTree.aspx?IsFree=true&f=yes&IsCheckPr ...

  4. window.frames && iframe 跨页面通信

    1.定义 frames[]是窗口中所有命名的框架组成的数组.这个数组的每个元素都是一个Window对象,对应于窗口中的一个框架. 2.用法 假设iframe 是一个以存在的 iframe 的 ID 和 ...

  5. window.frames[iframe].document 在ie可以用,在360、火狐中都不兼容?

    <iframe id="myf" scrolling="auto" frameborder="0" src="" ...

  6. 关于为什么window.frames[0].src不能获取src

    在DOM文档对象模型中,window对象处于最高层,而框架除了是当前窗体的一个节点外,本身也是独立window对象,当frames作为window对象时,有name属性, 而没有src属性,只有作为节 ...

  7. document.frames与window.frames在不同浏览器中的使用

    问题: document.frames 只有 IE Opera 支持.等同于 window.frames.用来取得当前页面内 window 对象的集合. 在 Firefox Chorome Safar ...

  8. window.frames在不同浏览器中的用法

    document.frames 等同于 window.frames,用来取得当前页面内 window 对象的集合. 不支持Firefox,其他浏览器(chrome.opera.IE.360)均支持. ...

  9. Prompt isNaN 数组 function DOM window.open/close/location/history

    1.prompt的利用 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defa ...

随机推荐

  1. linux(centos8):用tr替换或删除字符

    一,tr命令的用途 tr命令可以替换或删除文件中的字符 它从标准输入设备读取数据, 处理完成将结果输出到标准输出设备 说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnbl ...

  2. 【Azure 批处理 Azure Batch】在Azure Batch中如何通过开始任务自动安装第三方依赖的一些软件(Windows环境)

    准备条件 Azure Batch账号 需要安装的软件包(zip)文件,里面包含该软件的msi安装文件, 此处使用python.msi 版本 3.3.3 作为例子(https://www.python. ...

  3. Linux基础命令之getent

    getent命令简述 getent - get entries(entry的复数,条目.项目.记载.记录) getent命令可以用来察看系统的数据库中的相关记录 经常使用getent查看用户账号: 之 ...

  4. Linux用户和组管理命令-用户删除userdel

    删除用户 userdel 可删除Linux 用户 格式: userdel [OPTION]... Login 常见选项: -f, --force 强制 -r, --remove 删除用户家目录和邮箱 ...

  5. 一口气看完45个寄存器,CPU核心技术大揭秘

    序言 前段时间,我连续写了十来篇CPU底层系列技术故事文章,有不少读者私信我让我写一下CPU的寄存器. 寄存器这个太多太复杂,不适合写故事,拖了很久,总算是写完了,这篇文章就来详细聊聊x86/x64架 ...

  6. hdu1404,hdu1517 (博弈论入门)

    SG定理: 根据Sprague-Grundy定理(SG定理),对于某些博弈论问题可以这样思考: 首先可以确定一个必败状态(记为P)或必胜状态(记为N): 这样一来,若某一状态X若 可以 直接转移到P, ...

  7. Swagger配置与使用

    问题:前后端分离时代的到来 前端需要测试后端数据 后端提供接口,实时更新接口的改动 一.Swagger简介 号称世界上最流行的api框架 Restful api文档在线自动生成工具-->api文 ...

  8. Azure Data Factory(一)入门简介

    一,引言 今天分享一个新的Azure 服务-----Azure Data Factory(Azure 数据工厂),怎么理解,参考根据官方解释-----数据工厂解释:大数据需要可以启用协调和操作过程以将 ...

  9. 多快好省地使用pandas分析大型数据集

    1 简介 pandas虽然是个非常流行的数据分析利器,但很多朋友在使用pandas处理较大规模的数据集的时候经常会反映pandas运算"慢",且内存开销"大". ...

  10. Java创建二叉树、二叉树的遍历

    创建二叉树: public class Node {     // 左子节点     public Node leftNode;     // 右子节点     public Node rightNo ...