创建一个 ready();功能
为 DOMContentLoaded 事件创建一个就绪函数可能是个好主意,我们可以使用包含事件触发时要执行的代码的回调函数调用该函数,以下是如何完成的示例:
function ready(callback) { if (typeof callback !== 'function') { throw new Error('The callback parameter must be a function!'); } window.addEventListener('DOMContentLoaded', callback); }
为了使用此函数,我们可以将其与匿名箭头函数一起使用:
let message = 'The DOM is fully loaded.'; ready(() => { console.log(message); });
或者使用传统的 function 关键字:
ready(function() { console.log(message); });
DOMContentLoaded 事件仅在 DOM 完全加载后触发,无需等待图像、样式表和子frame;如果我们还需要完成加载资产,则应考虑使用 load 事件。
我们可以在 Window 界面上侦听此事件。
我们可以设置一个等待此事件的事件侦听器,以确保加载脚本依赖项并避免未定义的错误。
当我们设置事件侦听器时,我们将需要使用在事件触发后执行的回调函数:
window.addEventListener('DOMContentLoaded', function() { document.getElementById("id_of_element").innerHTML = '<p>DOM fully loaded.</p>'; });
如果我们只想更新元素的文本,则可以使用innerText 而不是innerHTML。
如果需要捕获事件,请将其作为函数参数传递:
window.addEventListener('DOMContentLoaded', function(event) { console.log(event); });
如果我们在依赖项上遇到未定义的错误,例如 jQuery 或者 $,那么在我们尝试使用此类库之前设置事件侦听器以确保 DOM 已加载有时可能会有所帮助。
日期:2020-06-02 22:16:04 来源:oir作者:oir