窗口加载后获取HTMLCollection的第一个元素(Joomla)

时间:2014-06-06 09:27:58

标签: javascript joomla htmlcollection

我写了一个joomla模块,我试图在一个小脚本中访问HTMLCollection。 我通过

添加了我的脚本文件
$document->addScript('templates/design_control/js/mod_articles_newsbox.js');

脚本本身如下所示:

function openNews(id)
{
    var list = document.getElementsByClassName("newsbox");
    console.log(list);
    console.log("newsbox length: " + list.length);
    console.log(list[0]);
    ...
}

if(window.addEventListener){
    window.addEventListener("load", openNews(0), false);
} else {
    window.attachEvent("onload", openNews(0));
}

现在的问题是我无法获得列表的第一个元素。当我记录列表本身一切似乎都很好,我得到一个包含1个元素的列表。但是当我尝试记录第一个元素或列表的长度时,它是未定义的/ 0。

我不知道,如果这是joomla的一个问题,我是如何添加脚本的,或者在元素准备好之前执行脚本(这很奇怪,因为列表本身打印正常)或其他东西,我只知道我浪费了太多时间在这上面^^那么,你有什么线索如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

在加载DOM时尝试使用不同的javascript事件:

smt.restarting...