Advertisement
Guest User

bubbling workaround

a guest
Apr 21st, 2012
195
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if(window.addEventListener && document.querySelectorAll){
  2.     window.addEventListener('DOMContentLoaded', function(){
  3.         var
  4.             targetResult  = null
  5.         ;
  6.         document.addEventListener('contextmenu', function(e){
  7.             e = e || window.event;
  8.             var
  9.                 target
  10.             ;
  11.             if(e.target){
  12.                 target = e.target;
  13.             }else if(e.srcElement){
  14.                 target = e.srcElement;
  15.             }
  16.             if(target.nodeType == 3){
  17.                 target = target.parentNode;
  18.             }
  19.             if(target.nodeName == 'LI'){
  20.                 target = target.firstChild;
  21.             }
  22.             if(target.nodeName == 'A' && target.parentNode.parentNode.className == 'search-results'){
  23.                 targetResult = target;
  24.             }
  25.         }, true);
  26.         document.addEventListener('click', function(e){
  27.             if(targetResult){
  28.                 e = e || window.event;
  29.                 var
  30.                     target
  31.                 ;
  32.                 if(e.target){
  33.                     target = e.target;
  34.                 }else if(e.srcElement){
  35.                     target = e.srcElement;
  36.                 }
  37.                 if(target.nodeType == 3){
  38.                     target = target.parentNode;
  39.                 }
  40.                 if(target.nodeName == 'MENUITEM'){
  41.                     alert(targetResult.textContent);
  42.                 }
  43.             }
  44.         }, true);
  45.     });
  46. }
Advertisement
RAW Paste Data Copied
Advertisement