我会不惜一切代价避免拥有inline javascript
,这就是您在问题代码中所做的:在 HTML 属性中添加 javascript。
最佳做法是将您的 javascript 添加到一个单独的文件中,请参阅有关此原则的相关问题What is Unobtrusive Javascript in layman terms?
因此,您将有一个名为“myjsfile.js”的其他文件,然后您从 HTML 页面中引用它
<script src="./path/to/your/myjsfile.js"></script>
以下是放置此参考的答案:在 HTML 文件中放置 Javascript 的位置?
您的“myjsfile.js”文件将简单地具有:
window.onload = function(){
getSubs(...);
getTags(...);
};
另一件要避免的事情:在同一个 HTML 文件中添加 javascript。原因也是基于同样的原理unobstrusive javascript
。外行术语中的 Unobtrusive Javascript 是什么?
但我想在某些极端情况下你可能想要这样做。
如果你真的需要,不要使用window.onload
inline javascript onload="..."
,看看为什么在这里window.onload vs <body onload=""/>
只需将以下内容添加到您的 HTML 文件中:
<script type="text/javascript">
window.onload = function(){
getSubs(...);
getTags(...);
};
</script>
以下是放置此代码的位置的答案:在 HTML 文件中放置 Javascript 的位置?
注意:是的,与您将引用放置到外部 javascript 文件的位置相同
另一件事:我不知道你的getSubs()
和getTags()
功能是在哪里定义的。但是如果你想让你的代码工作,它需要在定义它们的文件(或javascript的一部分)被加载之后调用这些函数。
简而言之:确保包含 和 定义的 javascript 文件getSubs()
在您的代码之前getTags()
被引用。