valid,invalid

関心を持てる事柄について

意図しないイベントバブリングの停止 in CoffeeScript

jQueryのイベントハンドラでreturn falseするとイベントのバブリングが止まるとは知っていたのに気づかなかった例

flag = true

setFlag = =>
  flag = false

$target = $('.target')

$target.on 'change', (e) =>
  setFlag()
    
$target.on 'change', (e) =>
  submit(e.value) # ここに到達しない

お分かりいただけただろうか

var $target, flag, setFlag;

flag = true;

setFlag = () => {
  return flag = false;
};

$target = $('.target');

$target.on('change', (e) => {
  return setFlag(); // ここで return false しているので
});

$target.on('change', (e) => {
  return submit(e.value); // ここに到達しない
});

CoffeeScript を捨てようかともがいている最中にその意思を強めた例とも言えるがこんなコードを書くのも悪い