How to pass preventDefault call to other event?

Viewed 648

When the event occurs, some other event is triggered by its name. In some cases the second handler can call preventDefault. How to pass this call to original event?

https://jsfiddle.net/edgv8qur/1/

$("button").click(function (event) {
  $("body").trigger("some-custom-event");

  // If the custom event was prevented, prevent original one too
  if (true) { // How to check?
    event.preventDefault();
  }
})

$("body").on("some-custom-event", function (event) {
  if (Math.random() > .5) {
    console.log("prevent");
    event.preventDefault();
  } else {
    console.log("allow");
  }
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button>Test</button>

PS: Same question in Russian.

1 Answers
Related