函数restClient(url)如何被调用whenevr DOMContentLoaded事件被激活?

时间:2015-06-28 12:39:01

标签: javascript jquery html google-chrome-extension

    document.addEventListener('DOMContentLoaded', function() {

      var url = "http://api.openweathermap.org/data/2.5/weather?q=" + "ranchi" + "&units=metric";

      restClient(url);

      document.querySelector('button').addEventListener('click', getWeatherByLocation);

    });



     function getWeatherByLocation() {`......do some work here..

    var url=.....;  

    restClient(url);
    }`

    function restClient(url) {....//do some work here...

document.getElementById("data").innerHTML="Something to write"..;
}

restClient()是ultmiatly的HTML页上写入的功能,现在的问题是第一次DOMContetnLoaded的{​​{1}}被称为并将其写入在{{1}页面,然后执行下一行:restClient
 当某些人触发按钮时,最终从HTML函数调用函数document.querySelector('button').addEventListener('click',getWeatherByLocation);, 但是当某个人再次触发按钮时,如何再次执行第4行。

我想在再次执行第4行之前,如果我没有错,必须执行第2,3行?

并且

1 个答案:

答案 0 :(得分:0)

当页面第一次加载时,

DOMContentLoaded仅触发一次。

如果您希望每次运行getWeatherByLocation时都执行其他代码,则应将其移至getWeatherByLocation函数的末尾。

请参阅DOMContentLoaded的文档: https://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded