在没有onclick的情况下加载页面时调用javascript函数

时间:2013-08-19 12:45:58

标签: php javascript html

我有一个footer.php文件,其中包含javascript代码和函数。我将这个footer.php文件用于我的所有页面。单击按钮时,我使用

onclick="MyFunc()"

但在某些页面中,我需要在没有onclick的情况下调用MyFunc,只需在页面加载时。我不能使用“body onload”函数,因为标签位于header.php文件中,所有页面都在使用它。我已经转向

<script Language="JavaScript">
window.onload=MyFunc; 
</script>

在我的php文件中

<script Language="JavaScript">
function MyFunc(){
alert('hello');
}
</script>

在footer.php但没有运气。

4 个答案:

答案 0 :(得分:1)

“但在某些页面中,我需要在没有onclick的情况下调用MyFunc”

我从你的问题中理解的是:

  • 你想在几页上发布MyFunc
  • 所有页面都包含footer.php(最后,我假设)。
  • MyFunc已经存在

如果这是正确的,您必须以某种方式仅在您希望触发的页面上触发此事件。这可以通过两种方式完成。

在自动触发页面

中添加一个小片段
window.addEventListener('load', MyFunc, false);

此代码将MyFunc函数添加到将在页面登录时触发的数组。 请记住:window.onload,这将在所有图片加载后触发

自动触发MyFunc

我不知道这些页面之间的区别是什么,但这可以通过在加载页面时触发该功能来完成,就像我上面显示的片段一样,就在这之前你检查一下触发器。例如,如果您触发的页面包含具有特定类test的元素,只需检查它是否存在(document.getElementsByClassName('test').length > 0)然后触发MyFunc

我希望这会有所帮助。

答案 1 :(得分:0)

如前所述,您可以使用window.onload,也可以将事件附加到DOM加载

<body onload="MyFunc()"></body>

答案 2 :(得分:0)

因为我知道语言属性已经过时了 尝试使用<script type="text/javascript">代替<script Language="JavaScript">

编辑:将样本放到jsFiddle

答案 3 :(得分:0)

如果它位于页脚(页面末尾),您可以在需要的地方输入此代码

<script>
    MyFunc()
</script>

这将调用函数