我有4个html文件和4个javascript文件。每个javascript文件都从每个html文件外部加载
index.html加载javascript.js 1.html加载javascript1.js 2.html加载javascript2.js 3.html加载javascript3.js
我遇到的问题是,当按下特定按钮时,index.html使用AJAX加载其他3个页面中的一个。然后应该发生的是特定页面将加载其自己的相应javascript程序,该程序在该程序的末尾包含应该在“load”上运行的window.addEventListener并运行函数“registerListeners”。 RegisterListeners然后在该页面上的按钮上注册一个事件监听器,currentyl只显示一个用于测试的警报。
我想到的是,当使用ajax动态加载页面时,window.addEventLisener的参数“load”似乎无效。
我无法将所有代码放在主javascript中,因为它包含一些getElementById调用,这些调用调用来自其中一个编号页面的元素,如果在主页面上执行加载会产生错误,因为那些特定ID尚不存在。
这是家庭作业,所以我需要指出正确的方向来做这个用html5和javascript没有jquery。我明白用jquery可能会更容易,但我需要弄清楚如何不用暂时这样做。
会不会出现window.addEventListener(“AJAXload”,someFunction(),false)???
答案 0 :(得分:1)
不是以编程方式添加事件侦听器,而是可以在AJAX内容的末尾插入一个简单的Javascript函数。这将在加载内容时运行,在父窗口中调用内容。
AJAX BLAH BLAH BLAH
<script type="text/javascript">
childContentLoaded(); //or whatever you need
</script>
您可能还需要添加“parent”.functionName()