Javascript 仅在加载脚本时初始化砌体

Javascript 仅在加载脚本时初始化砌体,javascript,jquery,jquery-masonry,Javascript,Jquery,Jquery Masonry,在我的wordpress脚本中,我使用条件语句只将脚本排在特定页面上。我还有一个全局javascript部分,加载所有页面,包括激活砌体功能的脚本: $container.masonry({ itemSelector: '.img-container', gutter: ".gutter-sizer" }); 当主脚本加载到页面上时,这可以正常工作,但如果未加载,则抛出undefined is not function错误。在执行上述代码之前,如何检查砌体是否已加载?我假设这同样适用于

在我的wordpress脚本中,我使用条件语句只将脚本排在特定页面上。我还有一个全局javascript部分,加载所有页面,包括激活砌体功能的脚本:

$container.masonry({
  itemSelector: '.img-container',
  gutter: ".gutter-sizer"
});
当主脚本加载到页面上时,这可以正常工作,但如果未加载,则抛出
undefined is not function
错误。在执行上述代码之前,如何检查砌体是否已加载?我假设这同样适用于大多数jQuery插件和其他js脚本

if ($.fn.masonry) {
    //...
}
但是我真的不喜欢这种情况。您还应确保使用库的脚本仅在真正需要时加载。

if (window.Masonry) {
  // Masonry has been loaded
}