test(browserTrigger): allow event bubbling
test(browserTrigger): allow event bubbling

In some browsers, events don't bubble when they are dispatched on node inside
a detached tree. When this is the case, the bubbling is made manually.
This may be convenient when unit testing directives, for example.

Closes #5178

mosoft521/angular.js,rlugojr/angular.js,rbevers/angular.js,angularbrasil/angular.js,ollie314/angular.js,laurent-le-graverend/angular.js,reneploetz/angular.js,kylewuolle/angular.js,sunoterra/angular.js,BobChao87/angular.js,chrisbautista/angular.js,Teremok/angular.js,yathos/angular.js,mprobst/angular.js,notebowl/angular.js,pondermatic/angular.js,hnccho/angular.js,LenaDonohoe/angular.js,arunkannan/angular.js,Awingu/angular.js,sunoterra/angular.js,Aremyst/angular.js,arunkannan/angular.js,arunkannan/angular.js,gkalpak/angular.js,reneploetz/angular.js,sercaneraslan/angular.js,pondermatic/angular.js,mgol/angular.js,Aremyst/angular.js,yathos/angular.js,jaredcacurak/angular.js,hnccho/angular.js,sercaneraslan/angular.js,angular/angular.js,arunkannan/angular.js,jbedard/angular.js,jaredcacurak/angular.js,LenaDonohoe/angular.js,sunoterra/angular.js,Awingu/angular.js,rlugojr/angular.js,rlugojr/angular.js,lgalfaso/angular.js,sjbarker/angular.js,kylewuolle/angular.js,pbr1111/angular.js,rbevers/angular.js,jaredcacurak/angular.js,sunoterra/angular.js,marcin-wosinek/angular.js,Aremyst/angular.js,jbedard/angular.js,eistrati/angular.js,dmuellner/angular.js,aoancea/angular.js,shengoo/angular.js,abdihaikal/angular.js,pondermatic/angular.js,rjamet/angular.js,BobChao87/angular.js,Awingu/angular.js,jaredcacurak/angular.js,BobChao87/angular.js,mgol/angular.js,zuzusik/angular.js,jbedard/angular.js,rjamet/angular.js,zuzusik/angular.js,pondermatic/angular.js,ze-pequeno/angular.js,mosoft521/angular.js,lgalfaso/angular.js,shengoo/angular.js,petebacondarwin/angular.js,LenaDonohoe/angular.js,angular/angular.js,notebowl/angular.js,ze-pequeno/angular.js,Hartmarken/angular.js,laurent-le-graverend/angular.js,ze-pequeno/angular.js,mprobst/angular.js,angular/angular.js,kylewuolle/angular.js,notebowl/angular.js,abdihaikal/angular.js,notebowl/angular.js,ollie314/angular.js,mprobst/angular.js,pbr1111/angular.js,nsina/angular.js,nsina/angular.js,kylewuolle/angular.js,a-lucas/angular.js,hnccho/angular.js,Hartmarken/angular.js,LenaDonohoe/angular.js,Aremyst/angular.js,sercaneraslan/angular.js,aoancea/angular.js,BobChao87/angular.js,eistrati/angular.js,abdihaikal/angular.js,rjamet/angular.js,Narretz/angular.js,lgalfaso/angular.js,sjbarker/angular.js,mgol/angular.js,a-lucas/angular.js,marcin-wosinek/angular.js,angularbrasil/angular.js,Teremok/angular.js,sercaneraslan/angular.js,petebacondarwin/angular.js,angularbrasil/angular.js,kuitos/angular.js,rbevers/angular.js,marcin-wosinek/angular.js,pbr1111/angular.js,laurent-le-graverend/angular.js,pbr1111/angular.js,ollie314/angular.js,Teremok/angular.js,shengoo/angular.js,mprobst/angular.js,angular/angular.js,sjbarker/angular.js,aoancea/angular.js,yathos/angular.js,nsina/angular.js,eistrati/angular.js,marcin-wosinek/angular.js,Awingu/angular.js,ollie314/angular.js,shengoo/angular.js,rbevers/angular.js,zuzusik/angular.js,Narretz/angular.js,dmuellner/angular.js,kuitos/angular.js,zuzusik/angular.js,mgol/angular.js,petebacondarwin/angular.js,sjbarker/angular.js,kuitos/angular.js,gkalpak/angular.js,Hartmarken/angular.js,Narretz/angular.js,rjamet/angular.js,jbedard/angular.js,mosoft521/angular.js,petebacondarwin/angular.js,dmuellner/angular.js,rlugojr/angular.js,kuitos/angular.js,abdihaikal/angular.js,Hartmarken/angular.js,yathos/angular.js,gkalpak/angular.js,aoancea/angular.js,angularbrasil/angular.js,eistrati/angular.js,dmuellner/angular.js,chrisbautista/angular.js,chrisbautista/angular.js,mosoft521/angular.js,Narretz/angular.js,lgalfaso/angular.js,nsina/angular.js,chrisbautista/angular.js,laurent-le-graverend/angular.js,hnccho/angular.js,a-lucas/angular.js,reneploetz/angular.js,a-lucas/angular.js,ze-pequeno/angular.js,gkalpak/angular.js,Teremok/angular.js,reneploetz/angular.js