我不会理解这一点:

我尝试创建一个自定义事件,当在列表主体中完全加载列表时应触发该事件。这样(在加载列表后执行):

  var event = new Event('mklistloaded', {
        name: 'listname'
  });

  document.dispatchEvent(event);


这是“接收”端:

document.addEventListener('mklistloaded', function(e) {

    console.log('mklistloaded event: ' + JSON.stringify(e));

});


但是控制台日志会打印出来:

mklistloaded event: {"isTrusted":false}


与mozilla示例中所述完全相同:

https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events

我在这里做错了什么?

最佳答案

您错过了docs“添加自定义数据– CustomEvent()”中的部分



document.addEventListener('mklistloaded', function(e) {
  console.log('mklistloaded detail: ', e.detail);
});
// use CustomEvent() instead of Event()
var event = new CustomEvent('mklistloaded', {
  'detail': 'listname'
});

document.dispatchEvent(event);





请注意,它似乎需要使用属性名称detail

09-26 04:44