获取窗口加载后HTMLCollection的第一个元素(Joomla)
Get first element of HTMLCollection after window loads (Joomla)
我写了一个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));
}
现在的问题是我无法得到列表的第一个元素。当我记录列表本身的时候,一切看起来都很好,我得到了一个只有一个元素的列表。但是当我尝试记录第一个元素或者列表长度时,它是undefined/0。
我不知道,如果这是joomla的问题,以及我如何添加脚本或脚本在元素准备好之前执行(这将是奇怪的,因为列表本身打印得很好)或其他东西,我只知道我浪费了太多的时间在这^^所以,你有任何线索如何解决这个问题吗?
尝试在加载DOM时使用不同的javascript事件:
if (window.addEventListener) {
window.addEventListener('DOMContentLoaded', openNews(0));
} else {
window.attachEvent('onload', openNews(0));
}
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- 如何设置html元素填充的动画
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 使用clickToggle并在单击另一个元素时关闭元素
- 单击时将焦点更改为元素
- 表追加而不附加最后一个元素
- 如何在jQuery中获取元素的形式
- 我可以获得相对于被点击元素的确切点击位置吗
- 在函数中添加数组元素的数值
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 将视口底部滚动到元素底部
- 是否有任何snippet或jQuery插件可以列出easylist.txt模式匹配的DOM中的所有元素
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 如何使用jquery处理php循环通过元素
- Joomla javascript(JQuery)手风琴菜单总是在单击最后一个子元素时展开所有节点
- 在Joomla网站上隐藏一个html元素
- 如何使用Jquery添加'连字符'类到P元素在Joomla中不工作
- 获取类名在jquery joomla中具有特定模式的元素
- 获取窗口加载后HTMLCollection的第一个元素(Joomla)