简体   繁体   English

使用JavaScript更改外部脚本中包含的HTML

[英]Using JavaScript To Change the HTML Contained In An External Script

I have an element on my website that is hosted externally and referenced in a script on my page. 我的网站上有一个元素由外部托管,并在页面上的脚本中引用。

I want to automatically change the text within this content so that it always displays tomorrow's date. 我想自动更改此内容中的文本,以使其始终显示明天的日期。

Script for the widget: 小部件的脚本:

<script src="//my.externalwidget.com/12345.js" type="text/javascript" charset="utf-8" async="async"></script>

HTML contained in external script: 外部脚本中包含的HTML:

<div id="changeHeaderOne">THIS SHOULD DISPLAY TOMORROW'S DATE</div>

My JS: 我的JS:

<script type="text/javascript">
var currentDate = new Date(new Date().getTime() + 24 * 60 * 60 * 1000);
var dateParse = currentDate.toString();
var dayAbbr = dateParse.substr(0, 3);
var day = currentDate.getDate();
var month = currentDate.getMonth() + 1;
var year = currentDate.getFullYear();
document.getElementById("changeHeaderTwo").innerHTML = "Tomorrow's date is " + dayAbbr + " " + month + "/" + day + "/" + year;
document.getElementById("changeHeaderOne").innerHTML = "Tomorrow's date is " + dayAbbr + " " + month + "/" + day + "/" + year;

I know my script is working because it runs properly on #changeHeaderTwo (located in DOM) but not on #changeHeaderOne (externally hosted and loaded using the script on top). 我知道我的脚本可以正常工作,因为它可以在#changeHeaderTwo(位于DOM中)上正常运行,但不能在#changeHeaderOne(在顶部使用脚本外部托管和加载)上正常运行。

Any ideas how to make this apply to the externally loaded code as well? 任何想法如何使它也适用于外部加载的代码?

You are using document.getElementByClass() (which should really by document.getElementsByClassName() ) when your div has an id. 当div具有ID时,您正在使用document.getElementByClass() (实际上应该由document.getElementsByClassName() )。 Use document.getElementById() instead. 请改用document.getElementById()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM