Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<title>Sandbox</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<style type="text/css" media="screen">
body { background-color: #000; }
.box {width: 50px; height: 50px; border: 1px solid white}
.highlight {background-color: yellow;}
#controls {position:absolute; top: 300px; color: white;}
</style>
</head>
<body>
  <div id="container">
     <div class="box" style="position:absolute; top: 25px; left: 25px;"></div>
     <div class="box" style="position:absolute; top: 50px; left: 125px;"></div>
     <div class="box" style="position:absolute; top: 100px; left: 25px;"></div>
     <div class="box" style="position:absolute; top: 125px; left: 180px;"></div>
     <div class="box" style="position:absolute; top: 225px; left: 25px;"></div>
     <div class="box" style="position:absolute; top: 185px; left: 125px;"></div>
     <div id="shield" style="position: absolute; width: 200px; top: 0px; background-color: grey; opacity: 0.5;"></div>
  </div>
  <div id="controls">
    <input type="checkbox" checked="checked">Pass pointer events through</input>
    Try clicking
  </div>
</body>
</html>
 
$(".box").click(function(){
     $(this).toggleClass("highlight");
});
function passThrough(e) {
    $(".box").each(function() {
       // check if clicked point (taken from event) is inside element
       var mouseX = e.pageX;
       var mouseY = e.pageY;
       var offset = $(this).offset();
       var width = $(this).width();
       var height = $(this).height();
       if (mouseX > offset.left && mouseX < offset.left+width 
           && mouseY > offset.top && mouseY < offset.top+height)
         $(this).click(); // force click event
    });
}
$("#shield").click(passThrough);
var dthen = new Date();
        
setInterval(function(){
    dNow = new Date();
    $('#shield').css('height', ((dNow.getSeconds()+(dNow.getMilliseconds()/1000))*50)%300 +'px');
},10)
var doPassThrough = true;
$('input').click(function(){
  doPassThrough =  !doPassThrough;
  if (doPassThrough){
    $("#shield").click(passThrough);
  } else {
    $('#shield').unbind('click', passThrough);
  }
});
Output

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
anonymouspro
0viewers