大家看一下javascript里top的意思?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大家看一下javascript里top的意思?相关的知识,希望对你有一定的参考价值。

<script>
var tobj=document.getElementById("top");
//单击让top链接到left网页
tobj.onclick=function()
window.top.location.href="left.html";

</script>

问:不明白window.top这里的top是框架最上面那一横条,可是不明白是这一横条本身系统规定的叫top,还是
因为在设置框架的时候<frame src="top.html" name="top">时候,把这框架陈为top的原因。自己运行了下,好像与name没关系,但是不敢确定,有顶朦朦胧胧。求大家指教

"window.location.href"、"location.href"是本页面跳转.
"parent.location.href" 是上一层页面跳转.
"top.location.href" 是最外层的页面跳转.
举例说明:
如果A,B,C,D都是html,D是C的iframe,C是B的iframe,B是A的iframe,如果D中js这样写
"window.location.href"、"location.href":D页面跳转
"parent.location.href":C页面跳转
"top.location.href":A页面跳转
如果D页面中有form的话,
<form>: form提交后D页面跳转
<form target="_blank">: form提交后弹出新页面
<form target="_parent">: form提交后C页面跳转
<form target="_top"> : form提交后A页面跳转

如果访问的是iframe里面的页面,重新加载最外层的页面

<html>
<head>
<title></title>
<script language="javascript">
function escapeFrame()
if (window.top.location.href != window.location.href)
window.top.location.reload();


</script>
</head>

<body onload="escapeFrame()">
<iframe src="b.html" ></iframe>
</body>
</html>
参考技术A

你看document.getElementById,就是表示根据id查找,也就是说有个id是top的元素,也就是你找到这一句

id="top"

JavaScript Decorators 的理解 和使用

  Decorators,按字面理解就是装饰器的意思。装饰的意思,我想大家都明白,就是对一个物件进行美化,让它变得更漂亮。现实的例子就是房屋装修。你买了一套房子,但是毛坯房,你肯定不想住,那就对它装饰一下,床,桌子,电视,冰箱等一通买,房子变漂亮了,住的也舒心了,同时功能也强大了,因为我们可以看电视了,上网了。

  Js中,Decorators的作用也是如此,对一个类或者其属性方法进行装饰,让它功能更加强大。语法非常简单,就是在一个类或者其属性方法前面加上@decoratordecorator 指的是装饰器的名称。装饰器本身是一个函数,因为在函数内部,我们可以进行任意的操作从而对其进行增强。

  稍微有点遗憾,现在的浏览器还没有支持它,不过我们有强大的babel, 可以利用babel进行转化, 就是配置有点麻烦,在学习之前,我们先用webpack配置一个简单的学习环境。

装饰器的转化依赖一个核心插件 babel-plugin-transform-decorators-legacy。 新建一个decorator 文件夹,npm init -y 初始化项目,安装各种依赖 npm install webpack webpack-dev-server  babel-core  babel-loader babel-plugin-transform-decorators-legacy --save-dev, 然后新建index.js 作为入口文件,index.html用于展示,webpack.config.js  配置文件 , 

  webpack.config.js  配置文件, 在babel-loader 的options中配置了transform-decorators-legacy  插件

const path = require(‘path‘);

module.exports = {
    entry: path.join(__dirname, ‘index.js‘),
    output: {
        path: path.join(__dirname),
        filename: ‘bundle.js‘
    },
    module: {
        rules: [
            {
                test: /\\.js$/,
                loader: ‘babel-loader‘,
                exclude: path.join(__dirname, ‘node_modules‘),
                options: {
                    plugins: [‘transform-decorators-legacy‘]
                }
            }

        ]
    }
}

  因为webpack 打包后文件是bundle.js , 所以要在index.html 中引入 bundle.js , index.html 如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <script src="bundle.js"></script>
</body>
</html>

  在index.js 中先随便写点东西,验证一个配置是否正确

document.body.innerHTML = ‘blue‘;

  在package.json文件中, scripts 字段中写入 "dev": "webpack-dev-server"

技术分享图片

  在decorator文件夹中启动命令窗口,输入npm run dev, 可以看到项目启动成功,在浏览器中输入locolhost:8080 ,可以看到blue 表示配置成功

  环境搭建好了,我们现在可以学习decorator 及其使用了。首先 decorator是作用在class上面的,所以声明一个class,比如Car , 

class Car {
   
}

   其次,decorators 是一个函数,那么我们就写一个函数,直接命名为decorators 好了, 这个函数必须有一个参数,来指定它要装饰的对象,参数名一般为target

function decorators(target) {
    target.color = ‘black‘;
}

  我们给target 定义了一个属性color, 由此我们可以推断出,要装饰的类有了一个color 属性。 修饰一个类,我们就在类的上面写上装饰器 @decorators, 我们可以打印一下, 我们的猜测是不是正确的, 整个index.js 文件如下:

// 装饰器函数
function decorators(target) {
    target.color = ‘black‘;
}
// 用@装饰器 装饰一个类 
@decorators
class Car {
   
}
console.log(Car.color);  // 输入black

  

 

 

以上是关于大家看一下javascript里top的意思?的主要内容,如果未能解决你的问题,请参考以下文章

说说你在豆瓣TOP250里怎么也不喜欢的电影有哪些?

提问一下js里srolltop。元素的offset top clientHeight 是从哪里算的?

JavaScript中return的用法详解

css position里static 的top bottom left right都是啥意思

JS实现回到Top(顶部)--JavaScript

网站爬取-案例一:猫眼电影TOP100