问题标签 [window-object]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1751 浏览

angular - 如何在 Angular 8 中重定向到上一页

我有一个组件,用户可以从各个页面访问它。当用户单击该组件中的 OK 按钮时,他应该被重定向到上一页,即。他来到这个组件的页面。

我遇到了window.history.back(); this.router.navigate('../')

另外,window.history.back(); 之间有什么区别?和 this.router.navigate('../')

this.location.back()我也想了解和之间有什么区别window.history.back()

0 投票
2 回答
724 浏览

typescript - 如何将“adsbygoogle”AdSense 属性添加到 Typescript 中的“window”全局对象?

我有一个在我的网络应用程序上呈现<AdSense/>广告单元的组件。

index.html我有以下 AdSense 标记:

该脚本可能会将adsbygoogle属性注入window对象。

但是在我的组件上,我必须像这样使用该属性:

当我的项目在JavaScript中时这很好,但现在我已经切换到Typescript,我收到以下错误:

在此处输入图像描述

如何声明此属性以使 Typescript 了解它是什么?


我试过的:

我创建了一个d.tsfor 全局声明。

环境.d.ts

以下不起作用。

以下似乎有效(就消除错误而言)。但它触发了一个新错误:

在此处输入图像描述

0 投票
0 回答
112 浏览

javascript - Window 对象是由浏览器提供还是由 javascript 引擎提供?

我在那里我正在学习一门课程,讲师说对象窗口是由 javascript 引擎提供的,我的问题是,对象窗口真的是由 javascript 引擎还是由浏览器提供的?因为在 window 对象中是浏览器提供的 API,如 fetch、setTimeout 等,用于与我们的 javascript 代码进行交互。我不明白 javascript 引擎是否生成了窗口对象,然后从浏览器继承了 API,或者发生了其他事情。

0 投票
1 回答
26 浏览

javascript - 窗口对象属性行为

当我们有普通的 javascript 对象时,我们可以使用类似objectName.proprtyName. 如果我们只使用propertyName,那么我们将收到如下错误 -

但是,在内置window对象的情况下,我们可以单独使用两者window.propertyNamepropertyName如下所示 -

究竟是什么导致了window对象的这种行为?我们可以为任何显式构建的对象(如第一个片段中的对象)复制相同的行为吗?(虽然没有人愿意污染全局范围,但我只有这个查询)

编辑-我收到评论说这个问题是另一个问题的重复。这个问题与我的答案非常相似,除了一个区别 - 我正在寻找一种方法来复制window对象的相同全局可访问行为。

0 投票
1 回答
41 浏览

reactjs - onkeydown 在带有 url 的新窗口上不起作用

在我的 React 应用程序中,单击按钮会打开一个新窗口。这个窗口被存储在一个变量中,我为onkeydownonbeforeunload事件附加了函数。

我观察到只有当窗口的 url 为空时才调用这些函数。

对于非空 url,这些事件不会被触发。

这是一个演示此的代码框:

编辑乐观-桑德森-bv83q

这与网址本身有什么关系吗?请说明我是否在这里遗漏了什么...


实际用例:

在我的前端应用程序(在端口 3000 上运行)中,我试图打开一个新窗口来打开后端 URL(在端口 8000 上运行)。因此,单击http://localhost:3000中的按钮,将打开一个指向http://localhost:8000/api/something的新窗口。

因此,我将 nginx 添加为反向代理,并将 '/' 指向 3000,将 '/api' 指向 8000,并在端口 80 下访问这两者,如下所示:

因此,现在我可以通过转到http://localhost并单击按钮来访问 ui 应用程序,新窗口将打开http://localhost/api/something。这不应该克服同源问题吗?

0 投票
2 回答
54 浏览

javascript - 从窗口对象提示添加

我如何使用 window 对象来添加/求和两个数字,我到目前为止得到的示例 - (我可以添加两个数字但不能让它等于总和?)

0 投票
0 回答
59 浏览

javascript - 我可以在我自己没有打开的同一个域中打开/聚焦不同的选项卡吗?

我有两个我的 Angular 应用程序实例在两个不同的选项卡中运行,我希望能够让用户通过按下网站上的按钮在它们之间切换。

我可以使用Broadcast Channel API在实例之间进行通信,但是window.focus()在非活动选项卡内调用不会做任何事情。由于消息是序列化/反序列化的,我也不能只通过通道发送窗口对象。

我还尝试通过在其中设置 window.name 然后调用活动选项卡来访问非活动选项卡的窗口实例window.open('', otherName)。这也不起作用,只会产生一个新的空选项卡。

解决方案必须适用于用户打开的应用程序的现有实例,我知道如果我只是从第一个实例中打开第二个实例(或 iframed 或类似的东西),这将起作用。我也知道这可以使用浏览器扩展来工作,但这也不适合我的用例。

如果这根本不可能,我只会在应用程序本身中构建“标签”,但我只是想我会先问,因为这种方式会更容易。

0 投票
0 回答
43 浏览

javascript - 我们可以重置 window.performance javascript 对象吗?

我正在开发一个单页应用程序,我很想知道我的应用程序的性能。所以我决定使用window.performance.timing。但是,由于我正在处理 SPA,因此无法为每次 DOM 更改重置此数据。那么有什么办法可以让我重置这个对象。如果没有,我如何计算我的表现?

提前致谢

0 投票
0 回答
18 浏览

javascript - JS:如何在被窗口事件调用时获取“this”

当被窗口全局事件调用时,自指针“this”不起作用。

如何获得正确this的方法event_handler

0 投票
0 回答
24 浏览

javascript - 如果屏幕上有多个监视器和任何大小的窗口,则获取正确的 onClick 位置坐标

有一个页脚组件,它重新呈现一个表示进度和完成百分比的条形一些源
有一个useBar被调用的钩子,onClick进度条快进或倒退到单击该条的点。

问题是它并非在所有情况下都有效,它仅在浏览器窗口最大化时有效。如果通过拖动角来调整浏览器窗口的大小或浏览器窗口位于显示器的某个区域时,
它不起作用如果存在与视口/当前窗口