javascript - 第 3 方添加到日历下拉列表未显示在子页面中

标签 javascript html angular

我想要一个“添加到事件”按钮和一个显示几个选项的下拉菜单。为此,我使用 AddEvent.com

这在 index.html 页面中运行良好,但问题是 javascript 无法到达子页面。 (或者至少看起来是这样)

指南说要在 head 中添加此脚本

<script type="text/javascript" src="https://addevent.com/libs/atc/1.6.1/atc.min.js" async defer></script>

然后你只需放置一个如下所示的div

<div title="Add to Calendar" class="addeventatc">
    Add to Calendar
    <span class="start">12/29/2016 09:00 AM</span>
    <span class="end">12/29/2016 11:00 AM</span>
    <span class="timezone">Europe/Amsterdam</span>
    <span class="title">Summary of the event</span>
    <span class="description">Description of the event<br>Example of a new line</span>
    <span class="location">Location of the event</span>
    <span class="organizer">Organizer</span>
    <span class="all_day_event">false</span>
    <span class="date_format">MM/DD/YYYY</span>
 </div>

就像我说的,这在 index.html 中有效,但在 (f.e.) page1.html 中无效。我认为问题可能出在第 3 方的 javascript 文件中,但我无法理解输入该 URL 时显示的文件。 ("https://addevent.com/libs/atc/1.6.1/atc.min.js ")

Plunker 来演示我的问题:AddEvent-ng2-Plunker

最佳答案

原来他们有很多这样的问题。喜欢smnbbrv如前所述,script 只会被插入一次,但不会重新加载。所以当加载新页面时,脚本不会自行执行。这样 div 将永远不会被 javascript 看到。

为了完成这项工作,我确实定义了一个变量declare const addeventatc:any;

只需在我要使用它的页面的 constructor/ngOnInit 中调用 addeventatc.refresh();

(如果您有订阅日历而不是添加到日历,您将需要addeventstc而不是addeventsatc ).

关于javascript - 第 3 方添加到日历下拉列表未显示在子页面中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41166037/

相关文章:

html - 如何让最后一个导航项始终保持一致?

javascript - 在更改该页面上的类时定向到另一个页面

javascript - 如果选择下拉选项,则获取数据并填充到文本框中

javascript - 如何跟随鼠标向相反方向移动?

javascript - 在 HTML 中,当我将鼠标悬停到基本图像上时如何将新图像放置到基本图像中,以便两个图像并排显示

angular - NG0200 : Circular dependency in DI detected for ApplicationRef

ionic-framework - ionic 2 : content in slides not scrolling

javascript - 为什么这些 Angular Div 不垂直拉伸(stretch)?

javascript - Nativescript 上是否有任何等效于 HTML anchor 标记的内容?

angular - 将图像从 api url 加载到 Angular 5 组件中