解雇两个脚本的正确方法是什么:一个加载数据和脚本的脚本。另一个操纵造型?

时间:2013-05-29 02:07:03

标签: javascript ajax dom javascript-events

我正在运行一个网站,使用Javascript动态加载新标题。我应该提一下,我的网站非常小,所以我故意避免使用jQuery或任何其他JS库。

第一个脚本加载JSON文件&随机选择HTML中的条目。第二个脚本“尝试”检查文档的长度是否超过视口,如果是的话。缩小文本并再次检查。

ajax.request("GET","file.json"); // works fine
preventScroll.resize(".headline"); // not so much

但是,我无法让第二个脚本可靠地工作。我已经尝试通过window.onload加载,我已经尝试将它从HEAD标记移动到BODY标记结束之前。

Scripts in question

Live Example

我应该如何正确地打电话给这些人,以便他们一直工作?

1 个答案:

答案 0 :(得分:2)

您没有在ajax“库中公开成功处理程序”。我建议做出这些改变:

var makeRequest = function(method, url, success) {

然后在函数内部:

//...
if (httpRequest.status === ajaxState.isOkay) {
    data = httpRequest.responseText;
    successHandler(data);
    success(); // you could call with more arguments
}

将整个事物一起使用:

ajax.request("GET","file.json", function() {
    preventScroll.resize(".headline");
});